added kill list display and removed kill tracking in player

This commit is contained in:
Lief9100
2020-04-24 19:53:57 -07:00
parent 5642174af5
commit bf87c8196c
3 changed files with 33 additions and 34 deletions

View File

@@ -245,7 +245,7 @@ class Game(arcade.Window):
bullet.remove_from_sprite_lists()
if len(enemy_hit_list):
boon = self.Recipe.add_kill(enemy_hit_list[0].monster_type)
if self.player.add_kill(enemy_hit_list[0].monster_type):
if boon >= 0:
getattr(self.player, Config.BOON_LIST[boon])();
enemy_hit_list[0].remove_from_sprite_lists()
bullet.remove_from_sprite_lists()

View File

@@ -168,19 +168,6 @@ class Player(Mob):
self.cur_recipe = None
self.speed = 14
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 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

View File

@@ -25,8 +25,10 @@ class ActiveRecipe(arcade.SpriteList):
super().__init__()
self.active = Recipe.GHOSTS
self.cycle_recipes = [self.set_ghosts, self.set_frogs, self.set_ggf]
self.ghost = arcade.Sprite(filename="resources/images/monsters/ghost/ghost1.png")
self.frog = arcade.Sprite(filename="resources/images/monsters/frog/frog1.png")
self.pos = 0
self.kill_num = 0
self.kill_list = []
def render(self) -> None:
@@ -37,7 +39,16 @@ class ActiveRecipe(arcade.SpriteList):
sprite.scale = 4
sprite.center_x = screen_right - x
sprite.center_y = screen_top
x += 70
sprite.draw()
x = 0
for kill in self.kill_list:
sprite = getattr(self, kill)
screen_right = arcade.get_viewport()[1] - 240
screen_top = arcade.get_viewport()[3] - 150
sprite.scale = 4
sprite.center_x = screen_right + x
sprite.center_y = screen_top
x += 70
sprite.draw()
@@ -48,33 +59,34 @@ class ActiveRecipe(arcade.SpriteList):
self.cycle_recipes[self.pos]()
def add_kill(self, monster_type) -> int:
for sprite in self.sprite_list:
if monster_type in "ghost":
r, g, b = sprite.color
darken = lambda c, s: c * (1 - s)
r = darken(r, .5)
g = darken(g, .5)
b = darken(b, .5)
sprite.color = (r, g, b)
return self.pos
# 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(monster_type)
ret_val = -1
if len(self.kill_list) >= 3:
if self.active == self.kill_list:
print("+++++++++++++++++++++++++++++++++++++++++++++++++++++++")
self.kill_list = []
ret_val = self.pos
self.kill_list = []
return ret_val
def set_ghosts(self) -> None:
self.active = Recipe.GHOSTS
self.sprite_list = []
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"))
self.sprite_list.append(arcade.Sprite(filename="resources/images/monsters/ghost/ghost1.png"))
self.sprite_list.append(self.ghost)
self.sprite_list.append(self.ghost)
self.sprite_list.append(self.ghost)
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(self.frog)
self.sprite_list.append(self.frog)
self.sprite_list.append(self.frog)
def set_ggf(self) -> None:
self.active = Recipe.GHOST_FROG
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/ghost/ghost1.png"))
self.sprite_list.append(arcade.Sprite(filename="resources/images/monsters/ghost/ghost1.png"))
self.sprite_list.append(self.frog)
self.sprite_list.append(self.ghost)
self.sprite_list.append(self.ghost)