annotate Spells.h @ 42:2bcc7b24c831

stats screen fixes, and boundary fixes
author zipi
date Sun, 20 Jan 2013 21:58:23 +0000
parents 9c0607679772
children 038a4d09406f
rev   line source
0
Ritor1
parents:
diff changeset
1 #pragma once
Ritor1
parents:
diff changeset
2
Ritor1
parents:
diff changeset
3
Ritor1
parents:
diff changeset
4
Ritor1
parents:
diff changeset
5 /* 360 */
Ritor1
parents:
diff changeset
6 enum SPELL_TYPE
Ritor1
parents:
diff changeset
7 {
Ritor1
parents:
diff changeset
8 SPELL_FIRE_PROTECTION_FROM_FIRE = 0x3,
Ritor1
parents:
diff changeset
9 SPELL_FIRE_HASTE = 0x5,
Ritor1
parents:
diff changeset
10 SPELL_FIRE_FIRE_RING = 0x8,
Ritor1
parents:
diff changeset
11 SPELL_AIR_FEATHER_FALL = 0xD,
Ritor1
parents:
diff changeset
12 SPELL_AIR_PROTECTION_FROM_AIR = 0xE,
Ritor1
parents:
diff changeset
13 SPELL_AIR_SHIELD = 0x11,
Ritor1
parents:
diff changeset
14 SPELL_WATER_PROTECTION_FROM_WATER = 0x19,
Ritor1
parents:
diff changeset
15 SPELL_WATER_WATER_WALK = 0x1B,
Ritor1
parents:
diff changeset
16 SPELL_EARTH_PROTECTION_FROM_EARTH = 0x24,
Ritor1
parents:
diff changeset
17 SPELL_EARTH_STONESKIN = 0x26,
Ritor1
parents:
diff changeset
18 SPELL_SPIRIT_DETECT_LIFE = 0x2D,
Ritor1
parents:
diff changeset
19 SPELL_SPIRIT_BLESS = 0x2E,
Ritor1
parents:
diff changeset
20 SPELL_SPIRIT_DOOM = 0x2F,
Ritor1
parents:
diff changeset
21 SPELL_SPIRIT_PRESERVE = 0x32,
Ritor1
parents:
diff changeset
22 SPELL_SPIRIT_HEROISM = 0x33,
Ritor1
parents:
diff changeset
23 SPELL_MIND_REMOVE_FEAR = 0x38,
Ritor1
parents:
diff changeset
24 SPELL_MIND_PROTECTION_FROM_MIND = 0x3A,
Ritor1
parents:
diff changeset
25 SPELL_MIND_CURE_PARALYSIS = 0x3D,
Ritor1
parents:
diff changeset
26 SPELL_BODY_CURE_WEAKNESS = 0x43,
Ritor1
parents:
diff changeset
27 SPELL_BODY_FIRST_AID = 0x44,
Ritor1
parents:
diff changeset
28 SPELL_BODY_CURE_POISON = 0x48,
Ritor1
parents:
diff changeset
29 SPELL_BODY_HAMMERHANDS = 0x49,
Ritor1
parents:
diff changeset
30 SPELL_BODY_CURE_DISEASE = 0x4A,
Ritor1
parents:
diff changeset
31 SPELL_BODY_PROTECTION_FROM_MAGIC = 0x4B,
Ritor1
parents:
diff changeset
32 SPELL_DARK_PAIN_REFLECTION = 0x5F,
Ritor1
parents:
diff changeset
33 };
Ritor1
parents:
diff changeset
34
Ritor1
parents:
diff changeset
35
Ritor1
parents:
diff changeset
36
Ritor1
parents:
diff changeset
37
Ritor1
parents:
diff changeset
38 /* 68 */
Ritor1
parents:
diff changeset
39 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
40 struct SpellBuff
Ritor1
parents:
diff changeset
41 {
Ritor1
parents:
diff changeset
42 inline SpellBuff()
Ritor1
parents:
diff changeset
43 {
Ritor1
parents:
diff changeset
44 uExpireTime = 0;
Ritor1
parents:
diff changeset
45 uPower = 0;
Ritor1
parents:
diff changeset
46 uSkill = 0;
Ritor1
parents:
diff changeset
47 uOverlayID = 0;
Ritor1
parents:
diff changeset
48 uCaster = 0;
Ritor1
parents:
diff changeset
49 uFlags = 0;
Ritor1
parents:
diff changeset
50 }
Ritor1
parents:
diff changeset
51
Ritor1
parents:
diff changeset
52 signed int Apply(unsigned __int64 uExpireTime, unsigned __int16 uSkillLevel, unsigned __int16 uPower, int a5, unsigned __int8 a6);
Ritor1
parents:
diff changeset
53 void Reset();
Ritor1
parents:
diff changeset
54 signed int _4585CA(__int64 a2);
Ritor1
parents:
diff changeset
55 bool NotExpired();
Ritor1
parents:
diff changeset
56
Ritor1
parents:
diff changeset
57 unsigned __int64 uExpireTime;
Ritor1
parents:
diff changeset
58 unsigned __int16 uPower;
Ritor1
parents:
diff changeset
59 unsigned __int16 uSkill;
Ritor1
parents:
diff changeset
60 unsigned __int16 uOverlayID;
Ritor1
parents:
diff changeset
61 unsigned __int8 uCaster;
Ritor1
parents:
diff changeset
62 unsigned __int8 uFlags;
Ritor1
parents:
diff changeset
63 };
Ritor1
parents:
diff changeset
64 #pragma pack(pop)
Ritor1
parents:
diff changeset
65
Ritor1
parents:
diff changeset
66
Ritor1
parents:
diff changeset
67 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
68 struct SpellInfo
Ritor1
parents:
diff changeset
69 {
Ritor1
parents:
diff changeset
70 char *pName;
Ritor1
parents:
diff changeset
71 char *pShortName;
Ritor1
parents:
diff changeset
72 char *pDescription;
Ritor1
parents:
diff changeset
73 char *pBasicSkillDesc;
Ritor1
parents:
diff changeset
74 char *pExpertSkillDesc;
Ritor1
parents:
diff changeset
75 char *pMasterSkillDesc;
Ritor1
parents:
diff changeset
76 char *pGrandmasterSkillDesc;
Ritor1
parents:
diff changeset
77 unsigned int uSchool;
Ritor1
parents:
diff changeset
78 int field_20;
Ritor1
parents:
diff changeset
79 };
Ritor1
parents:
diff changeset
80 #pragma pack(pop)
Ritor1
parents:
diff changeset
81
Ritor1
parents:
diff changeset
82
Ritor1
parents:
diff changeset
83
Ritor1
parents:
diff changeset
84 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
85 struct SpellStats
Ritor1
parents:
diff changeset
86 {
Ritor1
parents:
diff changeset
87 void Initialize();
Ritor1
parents:
diff changeset
88
Ritor1
parents:
diff changeset
89 SpellInfo pInfos[100];
Ritor1
parents:
diff changeset
90 };
Ritor1
parents:
diff changeset
91 #pragma pack(pop)
Ritor1
parents:
diff changeset
92
Ritor1
parents:
diff changeset
93
Ritor1
parents:
diff changeset
94
Ritor1
parents:
diff changeset
95
Ritor1
parents:
diff changeset
96
Ritor1
parents:
diff changeset
97
Ritor1
parents:
diff changeset
98
Ritor1
parents:
diff changeset
99
Ritor1
parents:
diff changeset
100
Ritor1
parents:
diff changeset
101 /* 364 */
Ritor1
parents:
diff changeset
102 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
103 struct stru324_spell
Ritor1
parents:
diff changeset
104 {
Ritor1
parents:
diff changeset
105 __int16 uItemType;
Ritor1
parents:
diff changeset
106 __int16 field_2;
Ritor1
parents:
diff changeset
107 };
Ritor1
parents:
diff changeset
108 #pragma pack(pop)
Ritor1
parents:
diff changeset
109
Ritor1
parents:
diff changeset
110 /* 151 */
Ritor1
parents:
diff changeset
111 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
112 struct SpellData
Ritor1
parents:
diff changeset
113 {
Ritor1
parents:
diff changeset
114 unsigned __int16 uNormalLevelMana;
Ritor1
parents:
diff changeset
115 unsigned __int16 uExpertLevelMana;
Ritor1
parents:
diff changeset
116 unsigned __int16 uMasterLevelMana;
Ritor1
parents:
diff changeset
117 unsigned __int16 uMagisterLevelMana;
Ritor1
parents:
diff changeset
118 unsigned __int16 field_8;
Ritor1
parents:
diff changeset
119 __int16 field_A;
Ritor1
parents:
diff changeset
120 __int16 field_C;
Ritor1
parents:
diff changeset
121 __int16 field_E;
Ritor1
parents:
diff changeset
122 __int16 field_10;
Ritor1
parents:
diff changeset
123 char field_12;
Ritor1
parents:
diff changeset
124 char field_13;
Ritor1
parents:
diff changeset
125 __int16 field_14;
Ritor1
parents:
diff changeset
126 };
Ritor1
parents:
diff changeset
127 #pragma pack(pop)
Ritor1
parents:
diff changeset
128
Ritor1
parents:
diff changeset
129
Ritor1
parents:
diff changeset
130
Ritor1
parents:
diff changeset
131
Ritor1
parents:
diff changeset
132 extern struct SpellStats *pSpellStats;
Ritor1
parents:
diff changeset
133
Ritor1
parents:
diff changeset
134
Ritor1
parents:
diff changeset
135 extern stru324_spell stru_4E3ACC[];
Ritor1
parents:
diff changeset
136 extern SpellData pSpellDatas[95];