diff --git a/triple-dungeon/mobs.py b/triple-dungeon/mobs.py index 66895a2..e32b374 100644 --- a/triple-dungeon/mobs.py +++ b/triple-dungeon/mobs.py @@ -130,7 +130,7 @@ class Mob(arcade.Sprite): super(Mob, self).__init__(*args, **kwargs) self.max_health, self.max_armor = max_health, max_armor - self.health, self.armor = max_health, max_armor + self.health, self.armor = 60, max_armor self.idle_textures = [] self.walking_textures = [] self.up_textures = [] @@ -168,16 +168,24 @@ class Player(Mob): self.cur_recipe = None self.speed = 14 - def add_kill(self, creature): + def add_kill(self, creature) -> int: # Adds a kill to kill_list. If 3 or more check the recipe then give a power up if it matches. self.kill_list.append(creature) print(self.kill_list) print(self.cur_recipe) - if self.cur_recipe == self.kill_list: - print("+++++++++++++++++++++++++++++++++++++++++++++++++++++++") - self.kill_list = [] - elif len(self.kill_list) >= 3: + if len(self.kill_list) >= 3: + if self.cur_recipe == self.kill_list: + print("+++++++++++++++++++++++++++++++++++++++++++++++++++++++") + self.kill_list = [] + return 1 self.kill_list = [] + return 0 + + def heal(self): + self.health+=Config.HEAL_AMOUNT + + def harden(self): + self.armor+=Config.ARMOR_AMOUNT def update_animation(self, delta_time: float = 1 / 60) -> None: """ @@ -258,8 +266,6 @@ class Enemy(Mob): else: self.change_y = 0 - - def get_path(self, end: Tuple[int, int] = None) -> List[Tuple[int, int]]: """ Returns the path to get to the Mob's target in absolute integer positions. diff --git a/triple-dungeon/recipe.py b/triple-dungeon/recipe.py index 6a2588b..7f28ea5 100644 --- a/triple-dungeon/recipe.py +++ b/triple-dungeon/recipe.py @@ -47,7 +47,7 @@ class ActiveRecipe(arcade.SpriteList): if self.pos == len(self.cycle_recipes): self.pos = 0 - def add_kill(self, monster_type): + def add_kill(self, monster_type) -> int: for sprite in self.sprite_list: if monster_type in "ghost": r, g, b = sprite.color @@ -56,7 +56,7 @@ class ActiveRecipe(arcade.SpriteList): g = darken(g, .5) b = darken(b, .5) sprite.color = (r, g, b) - return + return self.pos def set_ghosts(self) -> None: self.active = Recipe.GHOSTS @@ -65,10 +65,9 @@ class ActiveRecipe(arcade.SpriteList): self.sprite_list.append(arcade.Sprite(filename="resources/images/monsters/ghost/ghost1.png")) self.sprite_list.append(arcade.Sprite(filename="resources/images/monsters/ghost/ghost1.png")) - def set_frogs(self) -> None: self.active = Recipe.FROGS self.sprite_list = [] self.sprite_list.append(arcade.Sprite(filename="resources/images/monsters/frog/frog1.png")) self.sprite_list.append(arcade.Sprite(filename="resources/images/monsters/frog/frog1.png")) - self.sprite_list.append(arcade.Sprite(filename="resources/images/monsters/frog/frog1.png")) + self.sprite_list.append(arcade.Sprite(filename="resources/images/monsters/frog/frog1.png")) \ No newline at end of file