Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/MAFH2/Items.py
diff options
context:
space:
mode:
Diffstat (limited to 'MAFH2/Items.py')
-rw-r--r--[l---------]MAFH2/Items.py113
1 files changed, 112 insertions, 1 deletions
diff --git a/MAFH2/Items.py b/MAFH2/Items.py
index aedca8d..3c4cb20 120000..100644
--- a/MAFH2/Items.py
+++ b/MAFH2/Items.py
@@ -1 +1,112 @@
-../MAFH.activity/Items.py \ No newline at end of file
+from gettext import gettext as _
+
+class InvalidItemException(Exception): pass
+
+WEAPONS = {
+ '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,'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,'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,'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"),'path':'Small Key.gif'},
+ 'r':{'name':_("Big Key"),'path':'Big Key.gif'}
+}
+
+SPECIAL = {
+ 's':{'name':_("Calculator"),'path':'noItem.gif'}
+}
+
+class Item:
+ 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', KEYS[key]['path'])
+
+class Weapon(Item):
+ def __init__(self, key):
+ 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', ARMOR[key]['path'])
+ self.power = ARMOR[key]['power']
+
+class Usable(Item):
+ def __init__(self, key):
+ Item.__init__(self, USABLE[key]['name'], key, 'Usable', USABLE[key]['path'])
+
+ if USABLE[key].has_key( 'sell' ):
+ self.sellVal = USABLE[key]['sell']
+
+ if USABLE[key].has_key( 'buy' ):
+ self.buyVal = USABLE[key]['buy']
+
+ if USABLE[key].has_key( 'power' ):
+ self.power = USABLE[key]['power']
+
+class Accessory(Item):
+ def __init__(self, key):
+ 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', SPECIAL[key]['path'])
+
+def get_item(key):
+ if key in WEAPONS:
+ return Weapon( key )
+ elif key in ARMOR:
+ return Armor( key )
+ elif key in ACCESSORY:
+ return Accessory( key )
+ elif key in USABLE:
+ return Usable( key )
+ elif key in KEYS:
+ return Key( key )
+ elif key in SPECIAL:
+ return Special( key )
+ else:
+ raise InvalidItemException()