blob: 0e17b321e2bac24cb8cd00effdcf00051cd6bda7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
from Actor import Actor
from Items import get_item
#######################################################################
#Hero class - represents the player in battle and holds all of their data
##########################################################################
class Hero(Actor):
def __init__(self,player):
Actor.__init__(self)
self.player=player
self.weapon=None
self.armor=None
self.accessory=None
self.eqItem=[] #player can equip up to 4 usable items to use in battle
self.inv_Ar = [] #inventory
self.attacks_Ar = [] #associated array for attack string names and attack power values
self.currentInput=""
self.currentProb1=0
self.currentProb2=0
self.currentAnswer=0
self.fractionSum=0
self.akhal=0
amulet=get_item('1')
calculator=get_item('s')
emptyItem=None
self.eqItem=[emptyItem,emptyItem,emptyItem,emptyItem]
self.inv_Ar=[amulet,calculator]
#returns player's current attack power
def attackPower(self,name):
if name=="basic":
return self.ATT+self.BAE
elif name=="critical":
return self.ATT+self.BAE+self.BAB
elif name=="Fire":
return self.ATT+self.BAB
elif name=="Heal":
return self.BAB-10
elif name=="Lightning":
return self.ATT+self.BAB
elif name=="Division":
return (self.ATT+self.BAE+self.BAB)*1.5
elif name=="Missile":
return self.ATT+self.BAB
def setBonusAP(self,BAP):
self.BAB=BAP
#****INVENTORY MUTATORS********************************************#
#add item to equipment
def equip(self,item):
#add _item to equipment
if item.type=="Weapon":
if not self.weapon==None:
self.inv_Ar.append(self.weapon)
self.weapon=item
self.inv_Ar.remove(item)
self.BAE=item.power
elif item.type=="Armor":
if not self.armor==None:
self.inv_Ar.append(self.armor)
self.armor=item
self.inv_Ar.remove(item)
self.BDE=item.power
elif item.type=="Accessory":
if not self.accessory==None:
self.inv_Ar.append(self.accessory)
self.accessory=item
self.inv_Ar.remove(item)
self.BHP=item.power
elif item.type=="Usable":
if self.HP < self.MHP:
self.HP+=int(self.MHP*item.power)
self.player.migrateMessages("You heal for "+repr(int(self.MHP*item.power)))
self.inv_Ar.remove(item)
else:
self.player.migrateMessages("You are already at full health")
if self.HP>self.MHP:
self.HP=self.MHP
#remove item from equipment
def remEquipment(self,item):
if item != None:
if item.type=="Weapon":
self.weapon=None
self.BAE=0
self.inv_Ar.append(item)
elif item.type=="Armor":
self.armor=None
self.BDE=0
self.inv_Ar.appen(item)
elif item.type=="Accessory":
self.accessory=None
self.BHP=0
self.inv_Ar.append(item)
elif item==None:
i=0
else:
if item in self.eqItem:
self.eqItem[self.eqItem.index(item)]=None
self.inv_Ar.append(item)
#remove _item from equipment -- leave cell empty
#add item to inventory
def addInventory(self,item):
self.inv_Ar.append(item)
#add _item to end of inventory
def remInventory(self,item):
self.inv_Ar.remove(item)
#remove _item from inventory
#end class Hero
|