# HG changeset patch # User Emmanuel Gil Peyrot # Date 1370811273 -7200 # Node ID c689ff1743bf4355d6ed8fe5988318731052e60a # Parent b4be9b50557ef8378c4c60ad98a78f11cfeac9b5 Do the correct score calculation even when the enemy isn’t damageable. diff --git a/pytouhou/game/enemy.py b/pytouhou/game/enemy.py --- a/pytouhou/game/enemy.py +++ b/pytouhou/game/enemy.py @@ -313,8 +313,7 @@ class Enemy(object): if not (bx2 < ex1 or bx1 > ex2 or by2 < ey1 or by1 > ey2): bullet.collide() - if self.damageable: - damages += bullet.damage + damages += bullet.damage self._game.sfx_player.play('damage00.wav') # Check for enemy-laser collisions @@ -328,8 +327,7 @@ class Enemy(object): if not (lx2 < ex1 or lx1 > ex2 or ly < ey1): - if self.damageable: - damages += laser.damage + damages += laser.damage self._game.sfx_player.play('damage00.wav') self.drop_particles(1, 1) #TODO: don’t call each frame. @@ -354,15 +352,16 @@ class Enemy(object): score = (damages // 5) * 10 self._game.players[0].state.score += score #TODO: better distribution amongst the players. - if self._game.spellcard: - #TODO: there is a division by 3, somewhere... where is it? - if damages <= 7: - damages = 1 if damages else 0 - else: - damages //= 7 + if self.damageable: + if self._game.spellcard: + #TODO: there is a division by 3, somewhere... where is it? + if damages <= 7: + damages = 1 if damages else 0 + else: + damages //= 7 - # Apply damages - self.life -= damages + # Apply damages + self.life -= damages def handle_callbacks(self):