Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
boss_magus_telestra.cpp
Go to the documentation of this file.
1
/*
2
* This file is part of Project SkyFire https://www.projectskyfire.org.
3
* See LICENSE.md file for Copyright information
4
*/
5
6
#include "
ScriptMgr.h
"
7
#include "
ScriptedCreature.h
"
8
#include "
nexus.h
"
9
10
enum
Spells
11
{
12
SPELL_ICE_NOVA
= 47772,
13
H_SPELL_ICE_NOVA
= 56935,
14
SPELL_FIREBOMB
= 47773,
15
H_SPELL_FIREBOMB
= 56934,
16
SPELL_GRAVITY_WELL
= 47756,
17
SPELL_TELESTRA_BACK
= 47714,
18
19
SPELL_FIRE_MAGUS_VISUAL
= 47705,
20
SPELL_FROST_MAGUS_VISUAL
= 47706,
21
SPELL_ARCANE_MAGUS_VISUAL
= 47704
22
};
23
24
enum
Creatures
25
{
26
NPC_FIRE_MAGUS
= 26928,
27
NPC_FROST_MAGUS
= 26930,
28
NPC_ARCANE_MAGUS
= 26929
29
};
30
31
enum
Yells
32
{
33
SAY_AGGRO
= 0,
34
SAY_KILL
= 1,
35
SAY_DEATH
= 2,
36
SAY_MERGE
= 3,
37
SAY_SPLIT
= 4
38
};
39
40
enum
Misc
41
{
42
ACTION_MAGUS_DEAD
= 1,
43
DATA_SPLIT_PERSONALITY
= 2
44
};
45
46
const
Position
CenterOfRoom
= {504.80f, 89.07f, -16.12f, 6.27f};
47
48
class
boss_magus_telestra
:
public
CreatureScript
49
{
50
public
:
51
boss_magus_telestra
() :
CreatureScript
(
"boss_magus_telestra"
) { }
52
53
CreatureAI
*
GetAI
(
Creature
* creature)
const
OVERRIDE
54
{
55
return
new
boss_magus_telestraAI
(creature);
56
}
57
58
struct
boss_magus_telestraAI
:
public
ScriptedAI
59
{
60
boss_magus_telestraAI
(
Creature
* creature) :
ScriptedAI
(creature)
61
{
62
instance
= creature->
GetInstanceScript
();
63
}
64
65
InstanceScript
*
instance
;
66
67
uint64
uiFireMagusGUID
;
68
uint64
uiFrostMagusGUID
;
69
uint64
uiArcaneMagusGUID
;
70
71
bool
bFireMagusDead
;
72
bool
bFrostMagusDead
;
73
bool
bArcaneMagusDead
;
74
bool
bIsWaitingToAppear
;
75
76
uint32
uiIsWaitingToAppearTimer
;
77
uint32
uiIceNovaTimer
;
78
uint32
uiFireBombTimer
;
79
uint32
uiGravityWellTimer
;
80
uint32
uiCooldown
;
81
82
uint8
Phase
;
83
uint8
splitPersonality
;
84
time_t
time
[3];
85
86
void
Reset
()
OVERRIDE
87
{
88
Phase
= 0;
89
//These times are probably wrong
90
uiIceNovaTimer
= 7*
IN_MILLISECONDS
;
91
uiFireBombTimer
= 0;
92
uiGravityWellTimer
= 15*
IN_MILLISECONDS
;
93
uiCooldown
= 0;
94
95
uiFireMagusGUID
= 0;
96
uiFrostMagusGUID
= 0;
97
uiArcaneMagusGUID
= 0;
98
99
for
(
uint8
n = 0; n < 3; ++n)
100
time
[n] = 0;
101
102
splitPersonality
= 0;
103
bIsWaitingToAppear
=
false
;
104
105
me
->RemoveFlag(
UNIT_FIELD_FLAGS
,
UNIT_FLAG_NOT_SELECTABLE
);
106
me
->SetVisible(
true
);
107
108
if
(
instance
)
109
instance
->SetData(
DATA_MAGUS_TELESTRA_EVENT
,
NOT_STARTED
);
110
}
111
112
void
EnterCombat
(
Unit
*
/*who*/
)
OVERRIDE
113
{
114
Talk
(
SAY_AGGRO
);
115
116
if
(
instance
)
117
instance
->SetData(
DATA_MAGUS_TELESTRA_EVENT
,
IN_PROGRESS
);
118
}
119
120
void
JustDied
(
Unit
*
/*killer*/
)
OVERRIDE
121
{
122
Talk
(
SAY_DEATH
);
123
124
if
(
instance
)
125
instance
->SetData(
DATA_MAGUS_TELESTRA_EVENT
,
DONE
);
126
}
127
128
void
KilledUnit
(
Unit
*
/*victim*/
)
OVERRIDE
129
{
130
Talk
(
SAY_KILL
);
131
}
132
133
void
DoAction
(
int32
action)
OVERRIDE
134
{
135
if
(action ==
ACTION_MAGUS_DEAD
)
136
{
137
uint8
i = 0;
138
while
(
time
[i] != 0)
139
++i;
140
141
time
[i] =
sWorld
->GetGameTime();
142
if
(i == 2 && (
time
[2] -
time
[1] < 5) && (
time
[1] -
time
[0] < 5))
143
++
splitPersonality
;
144
}
145
}
146
147
uint32
GetData
(
uint32
type)
const
OVERRIDE
148
{
149
if
(type ==
DATA_SPLIT_PERSONALITY
)
150
return
splitPersonality
;
151
152
return
0;
153
}
154
155
uint64
SplitPersonality
(
uint32
entry)
156
{
157
if
(
Creature
* Summoned =
me
->SummonCreature(entry,
me
->GetPositionX(),
me
->GetPositionY(),
me
->GetPositionZ(),
me
->GetOrientation(),
TempSummonType::TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT
, 1*
IN_MILLISECONDS
))
158
{
159
switch
(entry)
160
{
161
case
NPC_FIRE_MAGUS
:
162
{
163
Summoned->CastSpell(Summoned,
SPELL_FIRE_MAGUS_VISUAL
,
false
);
164
break
;
165
}
166
case
NPC_FROST_MAGUS
:
167
{
168
Summoned->CastSpell(Summoned,
SPELL_FROST_MAGUS_VISUAL
,
false
);
169
break
;
170
}
171
case
NPC_ARCANE_MAGUS
:
172
{
173
Summoned->CastSpell(Summoned,
SPELL_ARCANE_MAGUS_VISUAL
,
false
);
174
break
;
175
}
176
}
177
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
178
Summoned->AI()->AttackStart(target);
179
return
Summoned->GetGUID();
180
}
181
return
0;
182
}
183
184
void
SummonedCreatureDespawn
(
Creature
* summon)
OVERRIDE
185
{
186
if
(summon->IsAlive())
187
return
;
188
189
if
(summon->GetGUID() ==
uiFireMagusGUID
)
190
{
191
me
->AI()->DoAction(
ACTION_MAGUS_DEAD
);
192
bFireMagusDead
=
true
;
193
}
194
else
if
(summon->GetGUID() ==
uiFrostMagusGUID
)
195
{
196
me
->AI()->DoAction(
ACTION_MAGUS_DEAD
);
197
bFrostMagusDead
=
true
;
198
}
199
else
if
(summon->GetGUID() ==
uiArcaneMagusGUID
)
200
{
201
me
->AI()->DoAction(
ACTION_MAGUS_DEAD
);
202
bArcaneMagusDead
=
true
;
203
}
204
}
205
206
void
UpdateAI
(
uint32
diff)
OVERRIDE
207
{
208
//Return since we have no target
209
if
(!
UpdateVictim
())
210
return
;
211
212
if
(
bIsWaitingToAppear
)
213
{
214
me
->StopMoving();
215
me
->AttackStop();
216
if
(
uiIsWaitingToAppearTimer
<= diff)
217
{
218
me
->RemoveFlag(
UNIT_FIELD_FLAGS
,
UNIT_FLAG_NOT_SELECTABLE
);
219
bIsWaitingToAppear
=
false
;
220
}
else
uiIsWaitingToAppearTimer
-= diff;
221
return
;
222
}
223
224
if
((
Phase
== 1) ||(
Phase
== 3))
225
{
226
if
(
bFireMagusDead
&&
bFrostMagusDead
&&
bArcaneMagusDead
)
227
{
228
for
(
uint8
n = 0; n < 3; ++n)
229
time
[n] = 0;
230
me
->GetMotionMaster()->Clear();
231
me
->SetPosition(
CenterOfRoom
.GetPositionX(),
CenterOfRoom
.GetPositionY(),
CenterOfRoom
.GetPositionZ(),
CenterOfRoom
.GetOrientation());
232
DoCast
(
me
,
SPELL_TELESTRA_BACK
);
233
me
->SetVisible(
true
);
234
if
(
Phase
== 1)
235
Phase
= 2;
236
if
(
Phase
== 3)
237
Phase
= 4;
238
uiFireMagusGUID
= 0;
239
uiFrostMagusGUID
= 0;
240
uiArcaneMagusGUID
= 0;
241
bIsWaitingToAppear
=
true
;
242
uiIsWaitingToAppearTimer
= 4*
IN_MILLISECONDS
;
243
Talk
(
SAY_MERGE
);
244
}
245
else
246
return
;
247
}
248
249
if
((
Phase
== 0) &&
HealthBelowPct
(50))
250
{
251
Phase
= 1;
252
me
->CastStop();
253
me
->RemoveAllAuras();
254
me
->SetVisible(
false
);
255
me
->SetFlag(
UNIT_FIELD_FLAGS
,
UNIT_FLAG_NOT_SELECTABLE
);
256
uiFireMagusGUID
=
SplitPersonality
(
NPC_FIRE_MAGUS
);
257
uiFrostMagusGUID
=
SplitPersonality
(
NPC_FROST_MAGUS
);
258
uiArcaneMagusGUID
=
SplitPersonality
(
NPC_ARCANE_MAGUS
);
259
bFireMagusDead
=
false
;
260
bFrostMagusDead
=
false
;
261
bArcaneMagusDead
=
false
;
262
Talk
(
SAY_SPLIT
);
263
return
;
264
}
265
266
if
(
IsHeroic
() && (
Phase
== 2) &&
HealthBelowPct
(10))
267
{
268
Phase
= 3;
269
me
->CastStop();
270
me
->RemoveAllAuras();
271
me
->SetVisible(
false
);
272
me
->SetFlag(
UNIT_FIELD_FLAGS
,
UNIT_FLAG_NOT_SELECTABLE
);
273
uiFireMagusGUID
=
SplitPersonality
(
NPC_FIRE_MAGUS
);
274
uiFrostMagusGUID
=
SplitPersonality
(
NPC_FROST_MAGUS
);
275
uiArcaneMagusGUID
=
SplitPersonality
(
NPC_ARCANE_MAGUS
);
276
bFireMagusDead
=
false
;
277
bFrostMagusDead
=
false
;
278
bArcaneMagusDead
=
false
;
279
Talk
(
SAY_SPLIT
);
280
return
;
281
}
282
283
if
(
uiCooldown
)
284
{
285
if
(
uiCooldown
<= diff)
286
uiCooldown
= 0;
287
else
288
{
289
uiCooldown
-= diff;
290
return
;
291
}
292
}
293
294
if
(
uiIceNovaTimer
<= diff)
295
{
296
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
297
{
298
DoCast
(target,
SPELL_ICE_NOVA
,
false
);
299
uiCooldown
= 1500;
300
}
301
uiIceNovaTimer
= 15*
IN_MILLISECONDS
;
302
}
else
uiIceNovaTimer
-= diff;
303
304
if
(
uiGravityWellTimer
<= diff)
305
{
306
if
(
Unit
* target =
me
->GetVictim())
307
{
308
DoCast
(target,
SPELL_GRAVITY_WELL
);
309
uiCooldown
= 6*
IN_MILLISECONDS
;
310
}
311
uiGravityWellTimer
= 15*
IN_MILLISECONDS
;
312
}
else
uiGravityWellTimer
-= diff;
313
314
if
(
uiFireBombTimer
<= diff)
315
{
316
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
317
{
318
DoCast
(target,
SPELL_FIREBOMB
,
false
);
319
uiCooldown
= 2*
IN_MILLISECONDS
;
320
}
321
uiFireBombTimer
= 2*
IN_MILLISECONDS
;
322
}
else
uiFireBombTimer
-=diff;
323
324
DoMeleeAttackIfReady
();
325
}
326
};
327
};
328
329
class
achievement_split_personality
:
public
AchievementCriteriaScript
330
{
331
public
:
332
achievement_split_personality
() :
AchievementCriteriaScript
(
"achievement_split_personality"
) { }
333
334
bool
OnCheck
(
Player
*
/*player*/
,
Unit
* target)
OVERRIDE
335
{
336
if
(!target)
337
return
false
;
338
339
if
(
Creature
* Telestra = target->
ToCreature
())
340
if
(Telestra->AI()->GetData(
DATA_SPLIT_PERSONALITY
) == 2)
341
return
true
;
342
343
return
false
;
344
}
345
};
346
347
void
AddSC_boss_magus_telestra
()
348
{
349
new
boss_magus_telestra
();
350
new
achievement_split_personality
();
351
}
Spells
Spells
Definition
BattlegroundIC.h:645
IN_MILLISECONDS
@ IN_MILLISECONDS
Definition
Common.h:125
int32
std::int32_t int32
Definition
Define.h:73
uint8
std::uint8_t uint8
Definition
Define.h:79
uint32
std::uint32_t uint32
Definition
Define.h:77
OVERRIDE
#define OVERRIDE
Definition
Define.h:60
uint64
std::uint64_t uint64
Definition
Define.h:76
IN_PROGRESS
@ IN_PROGRESS
Definition
InstanceScript.h:47
DONE
@ DONE
Definition
InstanceScript.h:49
NOT_STARTED
@ NOT_STARTED
Definition
InstanceScript.h:46
TempSummonType::TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT
@ TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT
Definition
Object.h:71
ScriptMgr.h
ScriptedCreature.h
UNIT_FLAG_NOT_SELECTABLE
@ UNIT_FLAG_NOT_SELECTABLE
Definition
Unit.h:650
SELECT_TARGET_RANDOM
@ SELECT_TARGET_RANDOM
Definition
UnitAI.h:23
UNIT_FIELD_FLAGS
@ UNIT_FIELD_FLAGS
Definition
UpdateFields.h:82
Creatures
Creatures
Definition
alterac_valley.cpp:28
SAY_DEATH
#define SAY_DEATH
Definition
boss_commander_kolurg.cpp:30
SAY_AGGRO
#define SAY_AGGRO
Definition
boss_commander_kolurg.cpp:28
SAY_KILL
#define SAY_KILL
Definition
boss_commander_kolurg.cpp:29
SAY_SPLIT
@ SAY_SPLIT
Definition
boss_halazzi.cpp:15
NPC_FROST_MAGUS
@ NPC_FROST_MAGUS
Definition
boss_magus_telestra.cpp:27
NPC_FIRE_MAGUS
@ NPC_FIRE_MAGUS
Definition
boss_magus_telestra.cpp:26
NPC_ARCANE_MAGUS
@ NPC_ARCANE_MAGUS
Definition
boss_magus_telestra.cpp:28
DATA_SPLIT_PERSONALITY
@ DATA_SPLIT_PERSONALITY
Definition
boss_magus_telestra.cpp:43
ACTION_MAGUS_DEAD
@ ACTION_MAGUS_DEAD
Definition
boss_magus_telestra.cpp:42
SAY_DEATH
@ SAY_DEATH
Definition
boss_magus_telestra.cpp:35
SAY_AGGRO
@ SAY_AGGRO
Definition
boss_magus_telestra.cpp:33
SAY_SPLIT
@ SAY_SPLIT
Definition
boss_magus_telestra.cpp:37
SAY_MERGE
@ SAY_MERGE
Definition
boss_magus_telestra.cpp:36
SAY_KILL
@ SAY_KILL
Definition
boss_magus_telestra.cpp:34
SPELL_ICE_NOVA
@ SPELL_ICE_NOVA
Definition
boss_magus_telestra.cpp:12
SPELL_TELESTRA_BACK
@ SPELL_TELESTRA_BACK
Definition
boss_magus_telestra.cpp:17
H_SPELL_FIREBOMB
@ H_SPELL_FIREBOMB
Definition
boss_magus_telestra.cpp:15
SPELL_FIREBOMB
@ SPELL_FIREBOMB
Definition
boss_magus_telestra.cpp:14
SPELL_GRAVITY_WELL
@ SPELL_GRAVITY_WELL
Definition
boss_magus_telestra.cpp:16
SPELL_ARCANE_MAGUS_VISUAL
@ SPELL_ARCANE_MAGUS_VISUAL
Definition
boss_magus_telestra.cpp:21
H_SPELL_ICE_NOVA
@ H_SPELL_ICE_NOVA
Definition
boss_magus_telestra.cpp:13
SPELL_FROST_MAGUS_VISUAL
@ SPELL_FROST_MAGUS_VISUAL
Definition
boss_magus_telestra.cpp:20
SPELL_FIRE_MAGUS_VISUAL
@ SPELL_FIRE_MAGUS_VISUAL
Definition
boss_magus_telestra.cpp:19
AddSC_boss_magus_telestra
void AddSC_boss_magus_telestra()
Definition
boss_magus_telestra.cpp:347
CenterOfRoom
const Position CenterOfRoom
Definition
boss_magus_telestra.cpp:46
Misc
Misc
Definition
boss_occuthar.cpp:37
AchievementCriteriaScript::AchievementCriteriaScript
AchievementCriteriaScript(const char *name)
Definition
ScriptMgr.cpp:1508
CreatureAI
Definition
CreatureAI.h:54
CreatureAI::Talk
void Talk(uint8 id, WorldObject const *whisperTarget=NULL)
Definition
CreatureAI.cpp:28
CreatureAI::UpdateVictim
bool UpdateVictim()
Definition
CreatureAI.cpp:192
Creature
Definition
Creature.h:427
CreatureScript::CreatureScript
CreatureScript(const char *name)
Definition
ScriptMgr.cpp:1436
InstanceScript
Definition
InstanceScript.h:123
Object::ToCreature
Creature * ToCreature()
Definition
Object.h:207
Player
Definition
Player.h:1289
UnitAI::DoMeleeAttackIfReady
void DoMeleeAttackIfReady()
Definition
UnitAI.cpp:28
UnitAI::DoCast
void DoCast(uint32 spellId)
Definition
UnitAI.cpp:110
UnitAI::SelectTarget
Unit * SelectTarget(SelectAggroTarget targetType, uint32 position=0, float dist=0.0f, bool playerOnly=false, int32 aura=0)
Definition
UnitAI.cpp:66
Unit
Definition
Unit.h:1367
WorldObject::GetInstanceScript
InstanceScript * GetInstanceScript()
Definition
Object.cpp:1612
achievement_split_personality
Definition
boss_magus_telestra.cpp:330
achievement_split_personality::OnCheck
bool OnCheck(Player *, Unit *target) OVERRIDE
Definition
boss_magus_telestra.cpp:334
achievement_split_personality::achievement_split_personality
achievement_split_personality()
Definition
boss_magus_telestra.cpp:332
boss_magus_telestra
Definition
boss_magus_telestra.cpp:49
boss_magus_telestra::boss_magus_telestra
boss_magus_telestra()
Definition
boss_magus_telestra.cpp:51
boss_magus_telestra::GetAI
CreatureAI * GetAI(Creature *creature) const OVERRIDE
Definition
boss_magus_telestra.cpp:53
sWorld
#define sWorld
Definition
World.h:910
nexus.h
DATA_MAGUS_TELESTRA_EVENT
@ DATA_MAGUS_TELESTRA_EVENT
Definition
nexus.h:11
Position
Definition
Object.h:274
ScriptedAI::IsHeroic
bool IsHeroic() const
Definition
ScriptedCreature.h:279
ScriptedAI::me
Creature * me
Definition
ScriptedCreature.h:182
ScriptedAI::HealthBelowPct
bool HealthBelowPct(uint32 pct) const
Definition
ScriptedCreature.h:247
ScriptedAI::ScriptedAI
ScriptedAI(Creature *creature)
Definition
ScriptedCreature.cpp:85
Yells
Definition
boss_illidan.cpp:256
boss_magus_telestra::boss_magus_telestraAI
Definition
boss_magus_telestra.cpp:59
boss_magus_telestra::boss_magus_telestraAI::uiArcaneMagusGUID
uint64 uiArcaneMagusGUID
Definition
boss_magus_telestra.cpp:69
boss_magus_telestra::boss_magus_telestraAI::bArcaneMagusDead
bool bArcaneMagusDead
Definition
boss_magus_telestra.cpp:73
boss_magus_telestra::boss_magus_telestraAI::EnterCombat
void EnterCombat(Unit *) OVERRIDE
Definition
boss_magus_telestra.cpp:112
boss_magus_telestra::boss_magus_telestraAI::boss_magus_telestraAI
boss_magus_telestraAI(Creature *creature)
Definition
boss_magus_telestra.cpp:60
boss_magus_telestra::boss_magus_telestraAI::GetData
uint32 GetData(uint32 type) const OVERRIDE
Definition
boss_magus_telestra.cpp:147
boss_magus_telestra::boss_magus_telestraAI::uiFrostMagusGUID
uint64 uiFrostMagusGUID
Definition
boss_magus_telestra.cpp:68
boss_magus_telestra::boss_magus_telestraAI::uiGravityWellTimer
uint32 uiGravityWellTimer
Definition
boss_magus_telestra.cpp:79
boss_magus_telestra::boss_magus_telestraAI::uiCooldown
uint32 uiCooldown
Definition
boss_magus_telestra.cpp:80
boss_magus_telestra::boss_magus_telestraAI::UpdateAI
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
Definition
boss_magus_telestra.cpp:206
boss_magus_telestra::boss_magus_telestraAI::Phase
uint8 Phase
Definition
boss_magus_telestra.cpp:82
boss_magus_telestra::boss_magus_telestraAI::uiIceNovaTimer
uint32 uiIceNovaTimer
Definition
boss_magus_telestra.cpp:77
boss_magus_telestra::boss_magus_telestraAI::bFrostMagusDead
bool bFrostMagusDead
Definition
boss_magus_telestra.cpp:72
boss_magus_telestra::boss_magus_telestraAI::bIsWaitingToAppear
bool bIsWaitingToAppear
Definition
boss_magus_telestra.cpp:74
boss_magus_telestra::boss_magus_telestraAI::SummonedCreatureDespawn
void SummonedCreatureDespawn(Creature *summon) OVERRIDE
Definition
boss_magus_telestra.cpp:184
boss_magus_telestra::boss_magus_telestraAI::uiFireMagusGUID
uint64 uiFireMagusGUID
Definition
boss_magus_telestra.cpp:67
boss_magus_telestra::boss_magus_telestraAI::DoAction
void DoAction(int32 action) OVERRIDE
Definition
boss_magus_telestra.cpp:133
boss_magus_telestra::boss_magus_telestraAI::bFireMagusDead
bool bFireMagusDead
Definition
boss_magus_telestra.cpp:71
boss_magus_telestra::boss_magus_telestraAI::instance
InstanceScript * instance
Definition
boss_magus_telestra.cpp:65
boss_magus_telestra::boss_magus_telestraAI::KilledUnit
void KilledUnit(Unit *) OVERRIDE
Definition
boss_magus_telestra.cpp:128
boss_magus_telestra::boss_magus_telestraAI::uiFireBombTimer
uint32 uiFireBombTimer
Definition
boss_magus_telestra.cpp:78
boss_magus_telestra::boss_magus_telestraAI::JustDied
void JustDied(Unit *) OVERRIDE
Definition
boss_magus_telestra.cpp:120
boss_magus_telestra::boss_magus_telestraAI::Reset
void Reset() OVERRIDE
Definition
boss_magus_telestra.cpp:86
boss_magus_telestra::boss_magus_telestraAI::SplitPersonality
uint64 SplitPersonality(uint32 entry)
Definition
boss_magus_telestra.cpp:155
boss_magus_telestra::boss_magus_telestraAI::time
time_t time[3]
Definition
boss_magus_telestra.cpp:84
boss_magus_telestra::boss_magus_telestraAI::uiIsWaitingToAppearTimer
uint32 uiIsWaitingToAppearTimer
Definition
boss_magus_telestra.cpp:76
boss_magus_telestra::boss_magus_telestraAI::splitPersonality
uint8 splitPersonality
Definition
boss_magus_telestra.cpp:83
src
server
scripts
Northrend
Nexus
Nexus
boss_magus_telestra.cpp
Generated on
for Project SkyFire Core by
1.17.0