Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--MAFH.activity/Items.py70
-rw-r--r--MAFH2/Dungeon.py30
l---------MAFH2/Items.py1
3 files changed, 65 insertions, 36 deletions
diff --git a/MAFH.activity/Items.py b/MAFH.activity/Items.py
index bb2061d..ca025ba 100644
--- a/MAFH.activity/Items.py
+++ b/MAFH.activity/Items.py
@@ -3,44 +3,44 @@ from gettext import gettext as _
class InvalidItemException(Exception): pass
WEAPONS = {
- '1':{'name':_("Ancient Amulet"),'power':3},
- '2':{'name':_("Rusted Blade"),'power':9},
- '3':{'name':_("Great Sword"),'power':15},
- '4':{'name':_("Crescent Sword"),'power':25},
- '5':{'name':_("Cardinal"),'power':35},
- '6':{'name':_("Sun Moon"),'power':50}
+ '1':{'name':_("Ancient Amulet"),'power':3,'path':'Weapon.gif'},
+ '2':{'name':_("Rusted Blade"),'power':9,'path':'Weapon.gif'},
+ '3':{'name':_("Great Sword"),'power':15,'path':'Weapon.gif'},
+ '4':{'name':_("Crescent Sword"),'power':25,'path':'Weapon.gif'},
+ '5':{'name':_("Cardinal"),'power':35,'path':'Weapon.gif'},
+ '6':{'name':_("Sun Moon"),'power':50,'path':'Weapon.gif'}
}
ARMOR = {
- '7':{'name':_("Earth Vest"),'power':8},
- '8':{'name':_("Wind Breaker"),'power':15},
- '9':{'name':_("Flame Leggings"),'power':25},
- 'a':{'name':_("Dark Cowl"),'power':35},
- 'b':{'name':_("Celestial Armor"),'power':50}
+ '7':{'name':_("Earth Vest"),'power':8,'path':'Armor.gif'},
+ '8':{'name':_("Wind Breaker"),'power':15,'path':'Armor.gif'},
+ '9':{'name':_("Flame Leggings"),'power':25,'path':'Armor.gif'},
+ 'a':{'name':_("Dark Cowl"),'power':35,'path':'Armor.gif'},
+ 'b':{'name':_("Celestial Armor"),'power':50,'path':'Armor.gif'}
}
ACCESSORY = {
- 'c':{'name':_("Jewel Shard"),'power':10},
- 'd':{'name':_("Broken Hourglass"),'power':10},
- 'e':{'name':_("Radiant Vial"),'power':20},
- 'f':{'name':_("Honor Tome"),'power':.2},
- 'g':{'name':_("Valor Tome"),'power':.2}
+ 'c':{'name':_("Jewel Shard"),'power':10,'path':'noItem.gif'},
+ 'd':{'name':_("Broken Hourglass"),'power':10,'path':'noItem.gif'},
+ 'e':{'name':_("Radiant Vial"),'power':20,'path':'noItem.gif'},
+ 'f':{'name':_("Honor Tome"),'power':.2,'path':'noItem.gif'},
+ 'g':{'name':_("Valor Tome"),'power':.2,'path':'noItem.gif'}
}
USABLE = {
- 'h':{'name':_("Ruby"),'sell':500},
- 'i':{'name':_("Sapphire"),'sell':500},
- 'j':{'name':_("Emerald"),'sell':500},
- 'k':{'name':_("Diamond"),'sell':500},
- 'l':{'name':_("Remedy"),'sell':6,'buy':20,'power':.30},
- 'm':{'name':_("Elixir"),'sell':15,'buy':60,'power':.5},
- 'n':{'name':_("Panacea"),'sell':50,'buy':100,'power':1.0},
- 'o':{'name':_("High Elixir"),'sell':30,'buy':300,'power':.65},
- 'p':{'name':_("Nostrum"),'sell':100,'buy':200,'power':.75},
+ 'h':{'name':_("Ruby"),'sell':500,'path':'Ruby.gif'},
+ 'i':{'name':_("Sapphire"),'sell':500,'path':'Sapphire.gif'},
+ 'j':{'name':_("Emerald"),'sell':500,'path':'Emerald.gif'},
+ 'k':{'name':_("Diamond"),'sell':500,'path':'Diamond.gif'},
+ 'l':{'name':_("Remedy"),'sell':6,'buy':20,'power':.30,'path':'Remedy.gif'},
+ 'm':{'name':_("Elixir"),'sell':15,'buy':60,'power':.5,'path':'Elixir.gif'},
+ 'n':{'name':_("Panacea"),'sell':50,'buy':100,'power':1.0,'path':'Panacea.gif'},
+ 'o':{'name':_("High Elixir"),'sell':30,'buy':300,'power':.65,'path':'High Elixir.gif'},
+ 'p':{'name':_("Nostrum"),'sell':100,'buy':200,'power':.75,'path':'Nostrum.gif'},
}
KEYS = {
- 'q':{'name':_("Small Key")},
- 'r':{'name':_("Big Key")}
+ 'q':{'name':_("Small Key"),'path':'Small Key.gif'},
+ 'r':{'name':_("Big Key"),'path':'Big Key.gif'}
}
SPECIAL = {
@@ -48,33 +48,34 @@ SPECIAL = {
}
class Item:
- def __init__(self, name, id, type):
+ def __init__(self, name, id, type, path='noItem.gif'):
self.name = name
self.id = id
self.type = type
self.power=0
self.buyVal=0
+ self.path=path
self.sellVal=1
self.hidden=False
self.battle=False
class Key(Item):
def __init__(self, key):
- Item.__init__(self, KEYS[key]['name'], key, 'key')
+ Item.__init__(self, KEYS[key]['name'], key, 'key', KEYS[key]['path'])
class Weapon(Item):
def __init__(self, key):
- Item.__init__(self, WEAPONS[key]['name'], key, 'Weapon')
+ Item.__init__(self, WEAPONS[key]['name'], key, 'Weapon', WEAPONS[key]['path'])
self.power = WEAPONS[key]['power']
class Armor(Item):
def __init__(self, key):
- Item.__init__(self, ARMOR[key]['name'], key, 'Armor')
+ Item.__init__(self, ARMOR[key]['name'], key, 'Armor', ARMOR[key]['path'])
self.power = ARMOR[key]['power']
class Usable(Item):
def __init__(self, key):
- Item.__init__(self, USABLE[key]['name'], key, 'Usable')
+ Item.__init__(self, USABLE[key]['name'], key, 'Usable', USABLE[key]['path'])
if USABLE[key].has_key( 'sell' ):
self.sellVal = USABLE[key]['sell']
@@ -87,13 +88,12 @@ class Usable(Item):
class Accessory(Item):
def __init__(self, key):
- Item.__init__(self, ACCESSORY[key]['name'], key, 'Accessory')
+ Item.__init__(self, ACCESSORY[key]['name'], key, 'Accessory', ACCESSORY[key]['path'])
self.power = ACCESSORY[key]['power']
class Special(Item):
def __init__(self, key):
- Item.__init__(self, SPECIAL[key]['name'], key, 'Special')
-
+ Item.__init__(self, SPECIAL[key]['name'], key, 'Special', SPECIAL[key]['path'])
def get_item(key):
if key in WEAPONS:
diff --git a/MAFH2/Dungeon.py b/MAFH2/Dungeon.py
index 41126e7..546afa3 100644
--- a/MAFH2/Dungeon.py
+++ b/MAFH2/Dungeon.py
@@ -5,6 +5,7 @@ from gettext import gettext as _
from GameEngine import GameEngineElement
from Room import Room
+from Items import get_item
from constants import (
MAP_PATH, ENV_PATH, RIGHT, LEFT, NORTH, SOUTH, EAST,
WEST, UNLOCKED_DOOR, LOCKED_DOOR, PUZZLE_DOOR, LOCKED_PUZZLE_DOOR,
@@ -165,6 +166,33 @@ class Dungeon(GameEngineElement):
def draw(self, screen):
profile = self.game_engine.get_object('profile')
dir = profile.playerFacing
- door_cfg = self.rooms[profile.position].door_str( dir )
+ current_room = self.rooms[profile.position]
+ # Draw background
+ door_cfg = current_room.door_str( dir )
screen.blit(self.__images[door_cfg],(0,0,1200,700))
+
+ # Draw Items
+ img_list = []
+
+ for i in range( dir, (dir + 4) ):
+
+ #imod for room rotation
+ imod = i % 4
+
+ item_key = current_room.get_item( imod )
+
+ if item_key[0] == '0':
+ path = "noItem.gif"
+ else:
+ path = get_item( item_key[0] ).path
+
+ if not self.__images.has_key( path ):
+ self.__images[path] = pygame.image.load(ENV_PATH + path)
+
+ img_list.append( self.__images[path] )
+
+ screen.blit(img_list[0],(270,330,50,50))
+ screen.blit(img_list[1],(100,600,50,50))
+ screen.blit(img_list[2],(1100,600,50,50))
+ screen.blit(img_list[3],(900,330,50,50))
diff --git a/MAFH2/Items.py b/MAFH2/Items.py
new file mode 120000
index 0000000..aedca8d
--- /dev/null
+++ b/MAFH2/Items.py
@@ -0,0 +1 @@
+../MAFH.activity/Items.py \ No newline at end of file