Mercurial > rinkhals
diff gamelib/animal.py @ 200:67d10f7e0159
selected chickens are selected
author | Adrianna Pińska <adrianna.pinska@gmail.com> |
---|---|
date | Fri, 04 Sep 2009 19:51:19 +0000 |
parents | 696936621a93 |
children | fe1e9c18d4d7 |
line wrap: on
line diff
--- a/gamelib/animal.py Fri Sep 04 19:49:30 2009 +0000 +++ b/gamelib/animal.py Fri Sep 04 19:51:19 2009 +0000 @@ -65,13 +65,25 @@ self.setimage(self.image_right) def equip(self, item): - self.equipment.append(item) + if equipment.is_equipment(item): + self.equipment.append(item) + elif equipment.is_accoutrement(item): + self.accoutrements.append(item) self.redraw() def unequip(self, item): - self.equipment = [e for e in self.equipment if e != item] + if equipment.is_equipment(item): + self.equipment = [e for e in self.equipment if e != item] + elif equipment.is_accoutrement(item): + self.accoutrements = [e for e in self.accoutrements if e != item] self.redraw() + def unequip_by_name(self, item_name): + # only remove first match + matches = [item for item in self.equipment + self.accoutrements if item.NAME == item_name] + if matches: + self.unequip(matches[0]) + def redraw(self): layers = [(self._image_left.copy(), self._image_right.copy(), 0)] if hasattr(self, 'EQUIPMENT_IMAGE_ATTRIBUTE'):