diff gamelib/equipment.py @ 244:7024d48c41c2

weapon layering with wing / eye
author Adrianna Pińska <adrianna.pinska@gmail.com>
date Sat, 05 Sep 2009 12:11:58 +0000
parents 00d609883252
children 048510e95812
line wrap: on
line diff
--- a/gamelib/equipment.py	Sat Sep 05 12:05:08 2009 +0000
+++ b/gamelib/equipment.py	Sat Sep 05 12:11:58 2009 +0000
@@ -8,6 +8,8 @@
 class Equipment(object):
     IS_EQUIPMENT = True
     DRAW_LAYER = 0
+    UNDER_LIMB = False
+    UNDER_EYE = False
 
     def __init__(self):
         self._buy_price = self.BUY_PRICE
@@ -29,11 +31,24 @@
             return None
         eq_image_left = imagecache.load_image(eq_image_file)
         eq_image_right = imagecache.load_image(eq_image_file, ("right_facing",))
+        if eq_image_attr == "CHICKEN_IMAGE_FILE":
+            # a bit hacky; eventually the chicken should have a stack of images and layering should take care of everything
+            if self.UNDER_LIMB:
+                wing_left = imagecache.load_image("sprites/wing.png")
+                wing_right = imagecache.load_image("sprites/wing.png", ("right_facing",))
+                eq_image_left.blit(wing_left, (0,0))
+                eq_image_right.blit(wing_right, (0,0))
+            if self.UNDER_EYE:
+                eye_left = imagecache.load_image("sprites/eye.png")
+                eye_right = imagecache.load_image("sprites/eye.png", ("right_facing",))
+                eq_image_left.blit(eye_left, (0,0))
+                eq_image_right.blit(eye_right, (0,0))
         return eq_image_left, eq_image_right, self.DRAW_LAYER
 
 class Weapon(Equipment):
     IS_WEAPON = True
     DRAW_LAYER = 10
+    UNDER_LIMB = True
 
     def _get_parameter(self, parameter, wielder):
         param = getattr(self, parameter)
@@ -119,7 +134,8 @@
 
     STARTING_HITPOINTS = 1
 
-    CHICKEN_IMAGE_FILE = 'sprites/helmet.png'
+    CHICKEN_IMAGE_FILE = 'sprites/equip_helmet.png'
+    UNDER_EYE = True
 
 class Kevlar(Armour):
     NAME = "kevlar"
@@ -128,7 +144,7 @@
 
     STARTING_HITPOINTS = 2
 
-    CHICKEN_IMAGE_FILE = 'sprites/kevlar.png'
+    CHICKEN_IMAGE_FILE = 'sprites/equip_kevlar.png'
 
 class Accoutrement(Equipment):
     """Things which are not equipment, but are displayed in the same way"""