Open calebmrose00 opened 5 years ago
I found a couple of issues:
17
for not having enough health to attack might need to change. I think it should be at least 30ish but maybe even more than 100. More discussion after this list..ability1()
, line 39 should be distance = self.distance(self.loc, target.loc)
or even just distance = self.distance(target.loc)
since the second argument defaults to self.loc
.if random() < chance:
.ability1()
and .ability2()
don't check for cooldown. I don't know if that was purposeful or not.I'll fix these myself (and a few other things), but I wanted you to know about them.
I was thinking about keeping a list of Champion specific constants either in a separate champ_constants.py
file or in the champs/__init__.py
file. That way we will never reuse constants. So, ANGELO_NOT_ENOUGH_HEALTH = 117
would be in that file. They should be fairly large (I think 100 is enough) to so as to never conflict with the common constants.
Questions:
What exactly is channeling?
Do .ability1()
and/or .ability2()
need to check for cooldown?
Do we need a separate ATTACK_SUCCESSFUL
constant or can we use SUCCESS
? I think we can do the latter if you don't have any objections.
I also think 'tira forte' should be a mod to attack instead of being implemented in .attack()
. It means we don't have to change the original Champion.attack()
to allow passing an attack_damge argument. This is why there are attack mods.
We do still have to override .attack()
to reset Angelo.tira_forte
to zero.
EDIT: Actually, that all depends on whether tira forte damage is always True damage or not. You have it implemented as always True damage in Lungo shot but nowhere else. Is it always True damage or not?
One last minor thing, you can change champ.health
directly. You were using self.damage(amount=20, defend=False)
, but you can use and should use self.health -= 20
. Since I also overrode champ.__setattr__()
to change self._health
each time you change self.health
, running self.health -= 20
works as expected.
Anyways, I've reviewed Angelo and pushed the (semi)final additions. Now, we just need to solidify the format of the wiki page.
Here's the original copy of the wiki stats and abilities.
565 + 10
5
20 range:2.5
2.7
Angelo and his twin Giuseppe are some of the greatest fighters in the world. This Italian is the greatest bowman in the world able to to make shots other bowmen only dream of. his exploits how ever take a tremendous tole on his mental fortitude and every once in a while he may stop and recollect himself.
I don't think the exact probabilities of Lungo shots need to be listed in the ability description. We can have separate documentation (like an actual Wiki site) where exact information can be found (like the exact rate of degeneration of Grey Health).
We can update the current wiki page and the docstrings of the ability methods once we finish with the wording. Of course, chanelling (and until values) has yet to be fully implemented.
565 + 10
5
20 range:2.5
2.7
Max stack: 4
Cooldown: 10 turns
Angelo and his twin, Giuseppe, are some of the greatest fighters in the world. This Italian bowman is the most adept in the world, able to make shots other bowmen only dream of. His exploits, however, take a tremendous toll on his mental fortitude, and every once in a while he may stop and recollect himself.
@JosiahRose Do you have anything to add or any clarifications to make to the wiki?
FYI i added some comment on your changes to angelo go look at them.
@nmay231 FYI i was the person who made Angelo and Giuseppe and also i added some comment on your changes to angelo go look at them.
I Actually managed to finish him in one sitting. however we will need to add:
Champion.channel() ATTACK_SUCCESSFUL constant
and he needs Review. so i guess i'll start working, on xayah. i think next should be Gillan he looks Easy.