annotate Spells.h @ 376:615e6b6f55c2

Merge
author Gloval
date Fri, 22 Feb 2013 20:03:15 +0400
parents 2bc1c8d68f41
children 7887a9cf9e7b
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
192
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
36 enum SPELL_SCHOOL : int
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
37 {
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
38 SPELL_SCHOOL_FIRE = 0,
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
39 SPELL_SCHOOL_AIR = 1,
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
40 SPELL_SCHOOL_WATER = 2,
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
41 SPELL_SCHOOL_EARTH = 3,
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
42 SPELL_SCHOOL_NONE = 4,
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
43 SPELL_SCHOOL_MAGIC = 5,
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
44 SPELL_SCHOOL_SPIRIT = 6,
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
45 SPELL_SCHOOL_MIND = 7,
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
46 SPELL_SCHOOL_BODY = 8,
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
47 SPELL_SCHOOL_LIGHT = 9,
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
48 SPELL_SCHOOL_DARK = 10
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
49 };
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
50
0
Ritor1
parents:
diff changeset
51
Ritor1
parents:
diff changeset
52
Ritor1
parents:
diff changeset
53 /* 68 */
Ritor1
parents:
diff changeset
54 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
55 struct SpellBuff
Ritor1
parents:
diff changeset
56 {
Ritor1
parents:
diff changeset
57 inline SpellBuff()
Ritor1
parents:
diff changeset
58 {
Ritor1
parents:
diff changeset
59 uExpireTime = 0;
Ritor1
parents:
diff changeset
60 uPower = 0;
Ritor1
parents:
diff changeset
61 uSkill = 0;
Ritor1
parents:
diff changeset
62 uOverlayID = 0;
Ritor1
parents:
diff changeset
63 uCaster = 0;
Ritor1
parents:
diff changeset
64 uFlags = 0;
Ritor1
parents:
diff changeset
65 }
Ritor1
parents:
diff changeset
66
Ritor1
parents:
diff changeset
67 signed int Apply(unsigned __int64 uExpireTime, unsigned __int16 uSkillLevel, unsigned __int16 uPower, int a5, unsigned __int8 a6);
Ritor1
parents:
diff changeset
68 void Reset();
Ritor1
parents:
diff changeset
69 signed int _4585CA(__int64 a2);
Ritor1
parents:
diff changeset
70 bool NotExpired();
Ritor1
parents:
diff changeset
71
Ritor1
parents:
diff changeset
72 unsigned __int64 uExpireTime;
Ritor1
parents:
diff changeset
73 unsigned __int16 uPower;
Ritor1
parents:
diff changeset
74 unsigned __int16 uSkill;
Ritor1
parents:
diff changeset
75 unsigned __int16 uOverlayID;
Ritor1
parents:
diff changeset
76 unsigned __int8 uCaster;
Ritor1
parents:
diff changeset
77 unsigned __int8 uFlags;
Ritor1
parents:
diff changeset
78 };
Ritor1
parents:
diff changeset
79 #pragma pack(pop)
Ritor1
parents:
diff changeset
80
Ritor1
parents:
diff changeset
81
Ritor1
parents:
diff changeset
82 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
83 struct SpellInfo
Ritor1
parents:
diff changeset
84 {
Ritor1
parents:
diff changeset
85 char *pName;
Ritor1
parents:
diff changeset
86 char *pShortName;
Ritor1
parents:
diff changeset
87 char *pDescription;
Ritor1
parents:
diff changeset
88 char *pBasicSkillDesc;
Ritor1
parents:
diff changeset
89 char *pExpertSkillDesc;
Ritor1
parents:
diff changeset
90 char *pMasterSkillDesc;
Ritor1
parents:
diff changeset
91 char *pGrandmasterSkillDesc;
192
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
92 SPELL_SCHOOL uSchool;
0
Ritor1
parents:
diff changeset
93 int field_20;
Ritor1
parents:
diff changeset
94 };
Ritor1
parents:
diff changeset
95 #pragma pack(pop)
Ritor1
parents:
diff changeset
96
Ritor1
parents:
diff changeset
97
Ritor1
parents:
diff changeset
98
Ritor1
parents:
diff changeset
99 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
100 struct SpellStats
Ritor1
parents:
diff changeset
101 {
Ritor1
parents:
diff changeset
102 void Initialize();
Ritor1
parents:
diff changeset
103
Ritor1
parents:
diff changeset
104 SpellInfo pInfos[100];
Ritor1
parents:
diff changeset
105 };
Ritor1
parents:
diff changeset
106 #pragma pack(pop)
Ritor1
parents:
diff changeset
107
Ritor1
parents:
diff changeset
108
Ritor1
parents:
diff changeset
109
Ritor1
parents:
diff changeset
110
Ritor1
parents:
diff changeset
111
Ritor1
parents:
diff changeset
112
Ritor1
parents:
diff changeset
113
Ritor1
parents:
diff changeset
114
Ritor1
parents:
diff changeset
115
Ritor1
parents:
diff changeset
116 /* 364 */
Ritor1
parents:
diff changeset
117 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
118 struct stru324_spell
Ritor1
parents:
diff changeset
119 {
Ritor1
parents:
diff changeset
120 __int16 uItemType;
Ritor1
parents:
diff changeset
121 __int16 field_2;
Ritor1
parents:
diff changeset
122 };
Ritor1
parents:
diff changeset
123 #pragma pack(pop)
Ritor1
parents:
diff changeset
124
Ritor1
parents:
diff changeset
125 /* 151 */
Ritor1
parents:
diff changeset
126 #pragma pack(push, 1)
Ritor1
parents:
diff changeset
127 struct SpellData
Ritor1
parents:
diff changeset
128 {
363
2bc1c8d68f41 Allocator and SpellCost Tip
Gloval
parents: 357
diff changeset
129 union
2bc1c8d68f41 Allocator and SpellCost Tip
Gloval
parents: 357
diff changeset
130 {
2bc1c8d68f41 Allocator and SpellCost Tip
Gloval
parents: 357
diff changeset
131 unsigned __int16 mana_per_skill[4];
2bc1c8d68f41 Allocator and SpellCost Tip
Gloval
parents: 357
diff changeset
132 struct
2bc1c8d68f41 Allocator and SpellCost Tip
Gloval
parents: 357
diff changeset
133 {
0
Ritor1
parents:
diff changeset
134 unsigned __int16 uNormalLevelMana;
Ritor1
parents:
diff changeset
135 unsigned __int16 uExpertLevelMana;
Ritor1
parents:
diff changeset
136 unsigned __int16 uMasterLevelMana;
Ritor1
parents:
diff changeset
137 unsigned __int16 uMagisterLevelMana;
363
2bc1c8d68f41 Allocator and SpellCost Tip
Gloval
parents: 357
diff changeset
138 };
2bc1c8d68f41 Allocator and SpellCost Tip
Gloval
parents: 357
diff changeset
139 };
0
Ritor1
parents:
diff changeset
140 unsigned __int16 field_8;
Ritor1
parents:
diff changeset
141 __int16 field_A;
Ritor1
parents:
diff changeset
142 __int16 field_C;
Ritor1
parents:
diff changeset
143 __int16 field_E;
Ritor1
parents:
diff changeset
144 __int16 field_10;
192
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
145 __int16 field_12;
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
146 // char field_12;
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
147 // char field_13;
189
038a4d09406f new texts file, fix text rendender error
Gloval
parents: 0
diff changeset
148 // __int16 field_14;
0
Ritor1
parents:
diff changeset
149 };
Ritor1
parents:
diff changeset
150 #pragma pack(pop)
Ritor1
parents:
diff changeset
151
357
b07cf89108d5 Spell positions in book
Gloval
parents: 192
diff changeset
152 #pragma pack(push, 1)
b07cf89108d5 Spell positions in book
Gloval
parents: 192
diff changeset
153 struct SpellBookIconPos
b07cf89108d5 Spell positions in book
Gloval
parents: 192
diff changeset
154 {
b07cf89108d5 Spell positions in book
Gloval
parents: 192
diff changeset
155 unsigned int Xpos;
b07cf89108d5 Spell positions in book
Gloval
parents: 192
diff changeset
156 unsigned int Ypos;
b07cf89108d5 Spell positions in book
Gloval
parents: 192
diff changeset
157 };
0
Ritor1
parents:
diff changeset
158
357
b07cf89108d5 Spell positions in book
Gloval
parents: 192
diff changeset
159 #pragma pack(pop)
0
Ritor1
parents:
diff changeset
160
Ritor1
parents:
diff changeset
161
Ritor1
parents:
diff changeset
162 extern struct SpellStats *pSpellStats;
Ritor1
parents:
diff changeset
163
363
2bc1c8d68f41 Allocator and SpellCost Tip
Gloval
parents: 357
diff changeset
164 extern struct SpellBookIconPos pIconPos[9][12];
0
Ritor1
parents:
diff changeset
165
Ritor1
parents:
diff changeset
166 extern stru324_spell stru_4E3ACC[];
192
1c8add70bcf9 spell init fixed
Gloval
parents: 189
diff changeset
167 extern SpellData pSpellDatas[100];