Mercurial > skaapsteker
changeset 209:189f7f8ef714
Basic item interaction.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Wed, 06 Apr 2011 23:41:53 +0200 |
parents | c72d9bf911fb |
children | 9a6c711e2fdf |
files | skaapsteker/sprites/base.py skaapsteker/sprites/player.py |
diffstat | 2 files changed, 21 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/skaapsteker/sprites/base.py Wed Apr 06 23:23:48 2011 +0200 +++ b/skaapsteker/sprites/base.py Wed Apr 06 23:41:53 2011 +0200 @@ -72,6 +72,10 @@ self.dsm = dialogue.DSM(name, world, dsm) + def collided_player(self, player): + print "%s is ignoring player" % self + + class Projectile(GameSprite): gravitates = False @@ -91,7 +95,8 @@ def setup(self, name, world): - pass + self.name = name + self.world = world def get_debug_color(self): @@ -100,8 +105,10 @@ return (0, 0, 240) - def collided_player(self): + def collided_player(self, player): print "Player touched %s" % self + player.take_item(self) + class Geography(Sprite):
--- a/skaapsteker/sprites/player.py Wed Apr 06 23:23:48 2011 +0200 +++ b/skaapsteker/sprites/player.py Wed Apr 06 23:41:53 2011 +0200 @@ -147,6 +147,7 @@ other.collided_player(self) print 'Health', self.the_world.fox.health + def damage(self, damage): self.the_world.fox.health -= damage if self.the_world.fox.health < 0: @@ -223,3 +224,14 @@ if facing == 'right': image = pygame.transform.flip(image, True, False) self._image_dict[key].append(image) + + + def take_item(self, item): + my_item = self.the_world.fox.item + if my_item is not None: + print "I already have", my_item + return + getattr(self.the_world.items, item.name).level = "gone" + self.the_world.fox.item = item.name + item.kill() + print "took", item