comparison skaapsteker/sprites/items.py @ 630:2707b33cbcb7

Unbreak breakable items
author Neil Muller <drnlmuller@gmail.com>
date Wed, 29 Jun 2011 18:30:50 +0200
parents da331c80ec08
children
comparison
equal deleted inserted replaced
629:59556235dec7 630:2707b33cbcb7
18 self.broken = broken 18 self.broken = broken
19 if self.breaking_sound[0] is not None: 19 if self.breaking_sound[0] is not None:
20 track, volume = self.breaking_sound 20 track, volume = self.breaking_sound
21 sound.load_sound(track, track, volume) 21 sound.load_sound(track, track, volume)
22 22
23 def setup_image_data(self, pos): 23 def setup_image_data(self, pos, **opts):
24 self.image_file = self.broken_image_file if self._me.broken else self.whole_image_file 24 self.image_file = self.broken_image_file if opts['broken'] else self.whole_image_file
25 super(BreakableItem, self).setup_image_data(pos) 25 super(BreakableItem, self).setup_image_data(pos)
26 26
27 27
28 def smash(self): 28 def smash(self):
29 if not self._me.broken: 29 if not self._me.broken:
30 self._me.broken = True 30 self._me.broken = True
31 self.broken = True 31 self.broken = True
32 self.setup_image_data(self.get_tile_pos()) 32 self.setup_image_data(self.get_tile_pos(), broken=self.broken)
33 if self.breaking_sound[0] is not None: 33 if self.breaking_sound[0] is not None:
34 sound.play_sound(self.breaking_sound[0]) 34 sound.play_sound(self.breaking_sound[0])
35 35
36 def damage(self, damage): 36 def damage(self, damage):
37 self.smash() 37 self.smash()