# HG changeset patch # User Stefano Rivera # Date 1302386960 -7200 # Node ID 52b38b803782b02098bb3c8e9bb8b3907db8f863 # Parent ba66bacbab22df0d6a23f1c2e36e3eb2db796f5e Skeleton for dead monsters diff -r ba66bacbab22 -r 52b38b803782 skaapsteker/sprites/base.py --- a/skaapsteker/sprites/base.py Sat Apr 09 23:49:33 2011 +0200 +++ b/skaapsteker/sprites/base.py Sun Apr 10 00:09:20 2011 +0200 @@ -208,6 +208,7 @@ def damage(self, damage): self.health -= damage if self.health <= 0: + AddSpriteEvent.post(Skeleton(self.rect.midbottom)) self.kill() class PatrollingMonster(Monster): @@ -443,6 +444,29 @@ Doorway.setup(self, facing, None) +class Skeleton(GameSprite): + mobile = False + gravitates = False + actionable = False + liftable = False + image_dir = 'sprites/skulls/' + debug_color = (255, 255, 0) + + def __init__(self, pos, player=False, **opts): + self._pos = pos + if player: + self.image_file = 'kitsune.png' + else: + self.image_file = 'monster.png' + GameSprite.__init__(self, pos, **opts) + self._layer = Layers.FOREGROUND + + def setup_image_data(self, pos): + GameSprite.setup_image_data(self, pos) + # Pixel based rect, not tile: + self.rect = self.image.get_rect(midbottom=self._pos) + self.collide_rect = self.rect.move(0, 0) + def find_sprite(descr, mod_name=None): """Create a sprite object from a dictionary describing it."""