Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
boss_darkweaver_syth.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
/* ScriptData
7
SDName: Boss_Darkweaver_Syth
8
SD%Complete: 85
9
SDComment: Shock spells/times need more work. Heroic partly implemented.
10
SDCategory: Auchindoun, Sethekk Halls
11
EndScriptData */
12
13
#include "
ScriptMgr.h
"
14
#include "
ScriptedCreature.h
"
15
#include "
sethekk_halls.h
"
16
17
enum
Says
18
{
19
SAY_SUMMON
= 0,
20
SAY_AGGRO
= 1,
21
SAY_SLAY
= 2,
22
SAY_DEATH
= 3
23
};
24
25
enum
Spells
26
{
27
SPELL_FROST_SHOCK
= 21401,
//37865
28
SPELL_FLAME_SHOCK
= 34354,
29
SPELL_SHADOW_SHOCK
= 30138,
30
SPELL_ARCANE_SHOCK
= 37132,
31
32
SPELL_CHAIN_LIGHTNING
= 15659,
//15305
33
34
SPELL_SUMMON_SYTH_FIRE
= 33537,
// Spawns 19203
35
SPELL_SUMMON_SYTH_ARCANE
= 33538,
// Spawns 19205
36
SPELL_SUMMON_SYTH_FROST
= 33539,
// Spawns 19204
37
SPELL_SUMMON_SYTH_SHADOW
= 33540,
// Spawns 19206
38
39
SPELL_FLAME_BUFFET
= 33526,
40
SPELL_ARCANE_BUFFET
= 33527,
41
SPELL_FROST_BUFFET
= 33528,
42
SPELL_SHADOW_BUFFET
= 33529
43
};
44
45
enum
Events
46
{
47
EVENT_FLAME_SHOCK
= 1,
48
EVENT_ARCANE_SHOCK
= 2,
49
EVENT_FROST_SHOCK
= 3,
50
EVENT_SHADOW_SHOCK
= 4,
51
EVENT_CHAIN_LIGHTNING
= 5
52
};
53
54
class
boss_darkweaver_syth
:
public
CreatureScript
55
{
56
public
:
57
boss_darkweaver_syth
() :
CreatureScript
(
"boss_darkweaver_syth"
) { }
58
59
struct
boss_darkweaver_sythAI
:
public
BossAI
60
{
61
boss_darkweaver_sythAI
(
Creature
* creature) :
BossAI
(creature,
DATA_DARKWEAVER_SYTH
)
62
{
63
summon90
=
false
;
64
summon50
=
false
;
65
summon10
=
false
;
66
}
67
68
void
Reset
()
OVERRIDE
69
{
70
_Reset
();
71
summon90
=
false
;
72
summon50
=
false
;
73
summon10
=
false
;
74
}
75
76
void
EnterCombat
(
Unit
*
/*who*/
)
OVERRIDE
77
{
78
_EnterCombat
();
79
events
.ScheduleEvent(
EVENT_FLAME_SHOCK
, 2000);
80
events
.ScheduleEvent(
EVENT_ARCANE_SHOCK
, 4000);
81
events
.ScheduleEvent(
EVENT_FROST_SHOCK
, 6000);
82
events
.ScheduleEvent(
EVENT_SHADOW_SHOCK
, 8000);
83
events
.ScheduleEvent(
EVENT_CHAIN_LIGHTNING
, 15000);
84
85
Talk
(
SAY_AGGRO
);
86
}
87
88
void
JustDied
(
Unit
*
/*killer*/
)
OVERRIDE
89
{
90
_JustDied
();
91
Talk
(
SAY_DEATH
);
92
}
93
94
void
KilledUnit
(
Unit
* who)
OVERRIDE
95
{
96
if
(who->GetTypeId() ==
TypeID::TYPEID_PLAYER
)
97
Talk
(
SAY_SLAY
);
98
}
99
100
void
JustSummoned
(
Creature
* summoned)
OVERRIDE
101
{
102
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
103
summoned->AI()->AttackStart(target);
104
}
105
106
void
SythSummoning
()
107
{
108
Talk
(
SAY_SUMMON
);
109
110
if
(
me
->IsNonMeleeSpellCasted(
false
))
111
me
->InterruptNonMeleeSpells(
false
);
112
113
DoCast
(
me
,
SPELL_SUMMON_SYTH_ARCANE
,
true
);
//front
114
DoCast
(
me
,
SPELL_SUMMON_SYTH_FIRE
,
true
);
//back
115
DoCast
(
me
,
SPELL_SUMMON_SYTH_FROST
,
true
);
//left
116
DoCast
(
me
,
SPELL_SUMMON_SYTH_SHADOW
,
true
);
//right
117
}
118
119
void
UpdateAI
(
uint32
diff)
OVERRIDE
120
{
121
if
(!
UpdateVictim
())
122
return
;
123
124
events
.Update(diff);
125
126
while
(
uint32
eventId =
events
.ExecuteEvent())
127
{
128
switch
(eventId)
129
{
130
case
EVENT_FLAME_SHOCK
:
131
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
132
DoCast
(target,
SPELL_FLAME_SHOCK
);
133
events
.ScheduleEvent(
EVENT_FLAME_SHOCK
, std::rand() % 15000 + 10000);
134
break
;
135
case
EVENT_ARCANE_SHOCK
:
136
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
137
DoCast
(target,
SPELL_ARCANE_SHOCK
);
138
events
.ScheduleEvent(
EVENT_ARCANE_SHOCK
, std::rand() % 15000 + 10000);
139
break
;
140
case
EVENT_FROST_SHOCK
:
141
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
142
DoCast
(target,
SPELL_FROST_SHOCK
);
143
events
.ScheduleEvent(
EVENT_FROST_SHOCK
, std::rand() % 15000 + 10000);
144
break
;
145
case
EVENT_SHADOW_SHOCK
:
146
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
147
DoCast
(target,
SPELL_SHADOW_SHOCK
);
148
events
.ScheduleEvent(
EVENT_SHADOW_SHOCK
, std::rand() % 15000 + 10000);
149
break
;
150
case
EVENT_CHAIN_LIGHTNING
:
151
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
152
DoCast
(target,
SPELL_CHAIN_LIGHTNING
);
153
events
.ScheduleEvent(
EVENT_CHAIN_LIGHTNING
, 25000);
154
break
;
155
default
:
156
break
;
157
}
158
}
159
160
if
(
HealthBelowPct
(90) && !
summon90
)
161
{
162
SythSummoning
();
163
summon90
=
true
;
164
}
165
166
if
(
HealthBelowPct
(50) && !
summon50
)
167
{
168
SythSummoning
();
169
summon50
=
true
;
170
}
171
172
if
(
HealthBelowPct
(10) && !
summon10
)
173
{
174
SythSummoning
();
175
summon10
=
true
;
176
}
177
178
DoMeleeAttackIfReady
();
179
}
180
181
private
:
182
bool
summon90
;
183
bool
summon50
;
184
bool
summon10
;
185
};
186
187
CreatureAI
*
GetAI
(
Creature
* creature)
const
OVERRIDE
188
{
189
return
GetSethekkHallsAI<boss_darkweaver_sythAI>
(creature);
190
}
191
};
192
193
/* ELEMENTALS */
194
class
npc_syth_fire
:
public
CreatureScript
195
{
196
public
:
197
npc_syth_fire
() :
CreatureScript
(
"npc_syth_fire"
) { }
198
199
struct
npc_syth_fireAI
:
public
ScriptedAI
200
{
201
npc_syth_fireAI
(
Creature
* creature) :
ScriptedAI
(creature)
202
{
203
flameshock_timer
= 0;
204
flamebuffet_timer
= 0;
205
}
206
207
void
Reset
()
OVERRIDE
208
{
209
me
->ApplySpellImmune(0,
IMMUNITY_SCHOOL
,
SPELL_SCHOOL_MASK_FIRE
,
true
);
210
flameshock_timer
= 2500;
211
flamebuffet_timer
= 5000;
212
}
213
214
void
EnterCombat
(
Unit
*
/*who*/
)
OVERRIDE
{ }
215
216
void
UpdateAI
(
uint32
diff)
OVERRIDE
217
{
218
if
(!
UpdateVictim
())
219
return
;
220
221
if
(
flameshock_timer
<= diff)
222
{
223
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
224
DoCast
(target,
SPELL_FLAME_SHOCK
);
225
226
flameshock_timer
= 5000;
227
}
else
flameshock_timer
-= diff;
228
229
if
(
flamebuffet_timer
<= diff)
230
{
231
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
232
DoCast
(target,
SPELL_FLAME_BUFFET
);
233
234
flamebuffet_timer
= 5000;
235
}
else
flamebuffet_timer
-= diff;
236
237
DoMeleeAttackIfReady
();
238
}
239
private
:
240
uint32
flameshock_timer
;
241
uint32
flamebuffet_timer
;
242
};
243
244
CreatureAI
*
GetAI
(
Creature
* creature)
const
OVERRIDE
245
{
246
return
new
npc_syth_fireAI
(creature);
247
}
248
};
249
250
class
npc_syth_arcane
:
public
CreatureScript
251
{
252
public
:
253
npc_syth_arcane
() :
CreatureScript
(
"npc_syth_arcane"
) { }
254
255
struct
npc_syth_arcaneAI
:
public
ScriptedAI
256
{
257
npc_syth_arcaneAI
(
Creature
* creature) :
ScriptedAI
(creature)
258
{
259
arcaneshock_timer
= 0;
260
arcanebuffet_timer
= 0;
261
}
262
263
void
Reset
()
OVERRIDE
264
{
265
me
->ApplySpellImmune(0,
IMMUNITY_SCHOOL
,
SPELL_SCHOOL_MASK_ARCANE
,
true
);
266
arcaneshock_timer
= 2500;
267
arcanebuffet_timer
= 5000;
268
}
269
270
void
EnterCombat
(
Unit
*
/*who*/
)
OVERRIDE
{ }
271
272
void
UpdateAI
(
uint32
diff)
OVERRIDE
273
{
274
if
(!
UpdateVictim
())
275
return
;
276
277
if
(
arcaneshock_timer
<= diff)
278
{
279
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
280
DoCast
(target,
SPELL_ARCANE_SHOCK
);
281
282
arcaneshock_timer
= 5000;
283
}
else
arcaneshock_timer
-= diff;
284
285
if
(
arcanebuffet_timer
<= diff)
286
{
287
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
288
DoCast
(target,
SPELL_ARCANE_BUFFET
);
289
290
arcanebuffet_timer
= 5000;
291
}
else
arcanebuffet_timer
-= diff;
292
293
DoMeleeAttackIfReady
();
294
}
295
296
private
:
297
uint32
arcaneshock_timer
;
298
uint32
arcanebuffet_timer
;
299
};
300
301
CreatureAI
*
GetAI
(
Creature
* creature)
const
OVERRIDE
302
{
303
return
new
npc_syth_arcaneAI
(creature);
304
}
305
};
306
307
class
npc_syth_frost
:
public
CreatureScript
308
{
309
public
:
310
npc_syth_frost
() :
CreatureScript
(
"npc_syth_frost"
) { }
311
312
struct
npc_syth_frostAI
:
public
ScriptedAI
313
{
314
npc_syth_frostAI
(
Creature
* creature) :
ScriptedAI
(creature)
315
{
316
frostshock_timer
= 0;
317
frostbuffet_timer
= 0;
318
}
319
320
void
Reset
()
OVERRIDE
321
{
322
me
->ApplySpellImmune(0,
IMMUNITY_SCHOOL
,
SPELL_SCHOOL_MASK_FROST
,
true
);
323
frostshock_timer
= 2500;
324
frostbuffet_timer
= 5000;
325
}
326
327
void
EnterCombat
(
Unit
*
/*who*/
)
OVERRIDE
{ }
328
329
void
UpdateAI
(
uint32
diff)
OVERRIDE
330
{
331
if
(!
UpdateVictim
())
332
return
;
333
334
if
(
frostshock_timer
<= diff)
335
{
336
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
337
DoCast
(target,
SPELL_FROST_SHOCK
);
338
339
frostshock_timer
= 5000;
340
}
else
frostshock_timer
-= diff;
341
342
if
(
frostbuffet_timer
<= diff)
343
{
344
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
345
DoCast
(target,
SPELL_FROST_BUFFET
);
346
347
frostbuffet_timer
= 5000;
348
}
else
frostbuffet_timer
-= diff;
349
350
DoMeleeAttackIfReady
();
351
}
352
353
private
:
354
uint32
frostshock_timer
;
355
uint32
frostbuffet_timer
;
356
};
357
358
CreatureAI
*
GetAI
(
Creature
* creature)
const
OVERRIDE
359
{
360
return
new
npc_syth_frostAI
(creature);
361
}
362
};
363
364
class
npc_syth_shadow
:
public
CreatureScript
365
{
366
public
:
367
npc_syth_shadow
() :
CreatureScript
(
"npc_syth_shadow"
) { }
368
369
struct
npc_syth_shadowAI
:
public
ScriptedAI
370
{
371
npc_syth_shadowAI
(
Creature
* creature) :
ScriptedAI
(creature)
372
{
373
shadowshock_timer
= 0;
374
shadowbuffet_timer
= 0;
375
}
376
377
void
Reset
()
OVERRIDE
378
{
379
me
->ApplySpellImmune(0,
IMMUNITY_SCHOOL
,
SPELL_SCHOOL_MASK_SHADOW
,
true
);
380
shadowshock_timer
= 2500;
381
shadowbuffet_timer
= 5000;
382
}
383
384
void
EnterCombat
(
Unit
*
/*who*/
)
OVERRIDE
{ }
385
386
void
UpdateAI
(
uint32
diff)
OVERRIDE
387
{
388
if
(!
UpdateVictim
())
389
return
;
390
391
if
(
shadowshock_timer
<= diff)
392
{
393
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
394
DoCast
(target,
SPELL_SHADOW_SHOCK
);
395
396
shadowshock_timer
= 5000;
397
}
else
shadowshock_timer
-= diff;
398
399
if
(
shadowbuffet_timer
<= diff)
400
{
401
if
(
Unit
* target =
SelectTarget
(
SELECT_TARGET_RANDOM
, 0))
402
DoCast
(target,
SPELL_SHADOW_BUFFET
);
403
404
shadowbuffet_timer
= 5000;
405
}
else
shadowbuffet_timer
-= diff;
406
407
DoMeleeAttackIfReady
();
408
}
409
410
private
:
411
uint32
shadowshock_timer
;
412
uint32
shadowbuffet_timer
;
413
};
414
415
CreatureAI
*
GetAI
(
Creature
* creature)
const
OVERRIDE
416
{
417
return
new
npc_syth_shadowAI
(creature);
418
}
419
};
420
421
void
AddSC_boss_darkweaver_syth
()
422
{
423
new
boss_darkweaver_syth
();
424
new
npc_syth_fire
();
425
new
npc_syth_arcane
();
426
new
npc_syth_frost
();
427
new
npc_syth_shadow
();
428
}
Spells
Spells
Definition
BattlegroundIC.h:645
uint32
std::uint32_t uint32
Definition
Define.h:77
OVERRIDE
#define OVERRIDE
Definition
Define.h:60
TypeID::TYPEID_PLAYER
@ TYPEID_PLAYER
Definition
Object.h:55
ScriptMgr.h
ScriptedCreature.h
IMMUNITY_SCHOOL
@ IMMUNITY_SCHOOL
Definition
SharedDefines.h:1598
SPELL_SCHOOL_MASK_SHADOW
@ SPELL_SCHOOL_MASK_SHADOW
Definition
SharedDefines.h:275
SPELL_SCHOOL_MASK_ARCANE
@ SPELL_SCHOOL_MASK_ARCANE
Definition
SharedDefines.h:276
SPELL_SCHOOL_MASK_FIRE
@ SPELL_SCHOOL_MASK_FIRE
Definition
SharedDefines.h:272
SPELL_SCHOOL_MASK_FROST
@ SPELL_SCHOOL_MASK_FROST
Definition
SharedDefines.h:274
SELECT_TARGET_RANDOM
@ SELECT_TARGET_RANDOM
Definition
UnitAI.h:23
Events
Events
Definition
alterac_valley.cpp:40
SAY_SLAY
@ SAY_SLAY
Definition
boss_alizabal.cpp:20
SAY_DEATH
#define SAY_DEATH
Definition
boss_commander_kolurg.cpp:30
SAY_AGGRO
#define SAY_AGGRO
Definition
boss_commander_kolurg.cpp:28
SAY_DEATH
@ SAY_DEATH
Definition
boss_darkweaver_syth.cpp:22
SAY_AGGRO
@ SAY_AGGRO
Definition
boss_darkweaver_syth.cpp:20
SAY_SLAY
@ SAY_SLAY
Definition
boss_darkweaver_syth.cpp:21
SAY_SUMMON
@ SAY_SUMMON
Definition
boss_darkweaver_syth.cpp:19
SPELL_FROST_BUFFET
@ SPELL_FROST_BUFFET
Definition
boss_darkweaver_syth.cpp:41
SPELL_ARCANE_BUFFET
@ SPELL_ARCANE_BUFFET
Definition
boss_darkweaver_syth.cpp:40
SPELL_SUMMON_SYTH_FIRE
@ SPELL_SUMMON_SYTH_FIRE
Definition
boss_darkweaver_syth.cpp:34
SPELL_ARCANE_SHOCK
@ SPELL_ARCANE_SHOCK
Definition
boss_darkweaver_syth.cpp:30
SPELL_FROST_SHOCK
@ SPELL_FROST_SHOCK
Definition
boss_darkweaver_syth.cpp:27
SPELL_SUMMON_SYTH_ARCANE
@ SPELL_SUMMON_SYTH_ARCANE
Definition
boss_darkweaver_syth.cpp:35
SPELL_SUMMON_SYTH_FROST
@ SPELL_SUMMON_SYTH_FROST
Definition
boss_darkweaver_syth.cpp:36
SPELL_SUMMON_SYTH_SHADOW
@ SPELL_SUMMON_SYTH_SHADOW
Definition
boss_darkweaver_syth.cpp:37
SPELL_FLAME_SHOCK
@ SPELL_FLAME_SHOCK
Definition
boss_darkweaver_syth.cpp:28
SPELL_CHAIN_LIGHTNING
@ SPELL_CHAIN_LIGHTNING
Definition
boss_darkweaver_syth.cpp:32
SPELL_SHADOW_BUFFET
@ SPELL_SHADOW_BUFFET
Definition
boss_darkweaver_syth.cpp:42
SPELL_FLAME_BUFFET
@ SPELL_FLAME_BUFFET
Definition
boss_darkweaver_syth.cpp:39
SPELL_SHADOW_SHOCK
@ SPELL_SHADOW_SHOCK
Definition
boss_darkweaver_syth.cpp:29
AddSC_boss_darkweaver_syth
void AddSC_boss_darkweaver_syth()
Definition
boss_darkweaver_syth.cpp:421
EVENT_CHAIN_LIGHTNING
@ EVENT_CHAIN_LIGHTNING
Definition
boss_darkweaver_syth.cpp:51
EVENT_ARCANE_SHOCK
@ EVENT_ARCANE_SHOCK
Definition
boss_darkweaver_syth.cpp:48
EVENT_FROST_SHOCK
@ EVENT_FROST_SHOCK
Definition
boss_darkweaver_syth.cpp:49
EVENT_FLAME_SHOCK
@ EVENT_FLAME_SHOCK
Definition
boss_darkweaver_syth.cpp:47
EVENT_SHADOW_SHOCK
@ EVENT_SHADOW_SHOCK
Definition
boss_darkweaver_syth.cpp:50
Says
Says
Definition
boss_halycon.cpp:17
SPELL_ARCANE_BUFFET
@ SPELL_ARCANE_BUFFET
Definition
boss_kalecgos.cpp:47
SPELL_SHADOW_SHOCK
@ SPELL_SHADOW_SHOCK
Definition
boss_lucifron.cpp:22
EVENT_SHADOW_SHOCK
@ EVENT_SHADOW_SHOCK
Definition
boss_lucifron.cpp:29
EVENT_ARCANE_SHOCK
@ EVENT_ARCANE_SHOCK
Definition
boss_malygos.cpp:61
SPELL_FROST_SHOCK
@ SPELL_FROST_SHOCK
Definition
boss_priestess_delrissa.cpp:60
EVENT_CHAIN_LIGHTNING
@ EVENT_CHAIN_LIGHTNING
Definition
boss_sjonnir.cpp:44
SAY_SUMMON
@ SAY_SUMMON
Definition
boss_urok_doomhowl.cpp:19
SPELL_ARCANE_SHOCK
@ SPELL_ARCANE_SHOCK
Definition
boss_vexallus.cpp:39
SPELL_CHAIN_LIGHTNING
@ SPELL_CHAIN_LIGHTNING
Definition
bosses_opera.cpp:73
BossAI::events
EventMap events
Definition
ScriptedCreature.h:439
BossAI::BossAI
BossAI(Creature *creature, uint32 bossId)
Definition
ScriptedCreature.cpp:456
BossAI::_JustDied
void _JustDied()
Definition
ScriptedCreature.cpp:474
BossAI::_Reset
void _Reset()
Definition
ScriptedCreature.cpp:462
BossAI::_EnterCombat
void _EnterCombat()
Definition
ScriptedCreature.cpp:485
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
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
boss_darkweaver_syth
Definition
boss_darkweaver_syth.cpp:55
boss_darkweaver_syth::GetAI
CreatureAI * GetAI(Creature *creature) const OVERRIDE
Definition
boss_darkweaver_syth.cpp:187
boss_darkweaver_syth::boss_darkweaver_syth
boss_darkweaver_syth()
Definition
boss_darkweaver_syth.cpp:57
npc_syth_arcane
Definition
boss_darkweaver_syth.cpp:251
npc_syth_arcane::npc_syth_arcane
npc_syth_arcane()
Definition
boss_darkweaver_syth.cpp:253
npc_syth_arcane::GetAI
CreatureAI * GetAI(Creature *creature) const OVERRIDE
Definition
boss_darkweaver_syth.cpp:301
npc_syth_fire
Definition
boss_darkweaver_syth.cpp:195
npc_syth_fire::GetAI
CreatureAI * GetAI(Creature *creature) const OVERRIDE
Definition
boss_darkweaver_syth.cpp:244
npc_syth_fire::npc_syth_fire
npc_syth_fire()
Definition
boss_darkweaver_syth.cpp:197
npc_syth_frost
Definition
boss_darkweaver_syth.cpp:308
npc_syth_frost::npc_syth_frost
npc_syth_frost()
Definition
boss_darkweaver_syth.cpp:310
npc_syth_frost::GetAI
CreatureAI * GetAI(Creature *creature) const OVERRIDE
Definition
boss_darkweaver_syth.cpp:358
npc_syth_shadow
Definition
boss_darkweaver_syth.cpp:365
npc_syth_shadow::GetAI
CreatureAI * GetAI(Creature *creature) const OVERRIDE
Definition
boss_darkweaver_syth.cpp:415
npc_syth_shadow::npc_syth_shadow
npc_syth_shadow()
Definition
boss_darkweaver_syth.cpp:367
SPELL_FLAME_BUFFET
@ SPELL_FLAME_BUFFET
Definition
hyjal_trash.cpp:16
sethekk_halls.h
GetSethekkHallsAI
AI * GetSethekkHallsAI(Creature *creature)
Definition
sethekk_halls.h:33
DATA_DARKWEAVER_SYTH
@ DATA_DARKWEAVER_SYTH
Definition
sethekk_halls.h:16
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
boss_darkweaver_syth::boss_darkweaver_sythAI::summon10
bool summon10
Definition
boss_darkweaver_syth.cpp:184
boss_darkweaver_syth::boss_darkweaver_sythAI::summon50
bool summon50
Definition
boss_darkweaver_syth.cpp:183
boss_darkweaver_syth::boss_darkweaver_sythAI::summon90
bool summon90
Definition
boss_darkweaver_syth.cpp:182
boss_darkweaver_syth::boss_darkweaver_sythAI::boss_darkweaver_sythAI
boss_darkweaver_sythAI(Creature *creature)
Definition
boss_darkweaver_syth.cpp:61
boss_darkweaver_syth::boss_darkweaver_sythAI::EnterCombat
void EnterCombat(Unit *) OVERRIDE
Definition
boss_darkweaver_syth.cpp:76
boss_darkweaver_syth::boss_darkweaver_sythAI::JustDied
void JustDied(Unit *) OVERRIDE
Definition
boss_darkweaver_syth.cpp:88
boss_darkweaver_syth::boss_darkweaver_sythAI::KilledUnit
void KilledUnit(Unit *who) OVERRIDE
Definition
boss_darkweaver_syth.cpp:94
boss_darkweaver_syth::boss_darkweaver_sythAI::SythSummoning
void SythSummoning()
Definition
boss_darkweaver_syth.cpp:106
boss_darkweaver_syth::boss_darkweaver_sythAI::Reset
void Reset() OVERRIDE
Definition
boss_darkweaver_syth.cpp:68
boss_darkweaver_syth::boss_darkweaver_sythAI::JustSummoned
void JustSummoned(Creature *summoned) OVERRIDE
Definition
boss_darkweaver_syth.cpp:100
boss_darkweaver_syth::boss_darkweaver_sythAI::UpdateAI
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
Definition
boss_darkweaver_syth.cpp:119
npc_syth_arcane::npc_syth_arcaneAI
Definition
boss_darkweaver_syth.cpp:256
npc_syth_arcane::npc_syth_arcaneAI::Reset
void Reset() OVERRIDE
Definition
boss_darkweaver_syth.cpp:263
npc_syth_arcane::npc_syth_arcaneAI::UpdateAI
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
Definition
boss_darkweaver_syth.cpp:272
npc_syth_arcane::npc_syth_arcaneAI::npc_syth_arcaneAI
npc_syth_arcaneAI(Creature *creature)
Definition
boss_darkweaver_syth.cpp:257
npc_syth_arcane::npc_syth_arcaneAI::arcanebuffet_timer
uint32 arcanebuffet_timer
Definition
boss_darkweaver_syth.cpp:298
npc_syth_arcane::npc_syth_arcaneAI::EnterCombat
void EnterCombat(Unit *) OVERRIDE
Definition
boss_darkweaver_syth.cpp:270
npc_syth_arcane::npc_syth_arcaneAI::arcaneshock_timer
uint32 arcaneshock_timer
Definition
boss_darkweaver_syth.cpp:297
npc_syth_fire::npc_syth_fireAI
Definition
boss_darkweaver_syth.cpp:200
npc_syth_fire::npc_syth_fireAI::flamebuffet_timer
uint32 flamebuffet_timer
Definition
boss_darkweaver_syth.cpp:241
npc_syth_fire::npc_syth_fireAI::UpdateAI
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
Definition
boss_darkweaver_syth.cpp:216
npc_syth_fire::npc_syth_fireAI::EnterCombat
void EnterCombat(Unit *) OVERRIDE
Definition
boss_darkweaver_syth.cpp:214
npc_syth_fire::npc_syth_fireAI::npc_syth_fireAI
npc_syth_fireAI(Creature *creature)
Definition
boss_darkweaver_syth.cpp:201
npc_syth_fire::npc_syth_fireAI::flameshock_timer
uint32 flameshock_timer
Definition
boss_darkweaver_syth.cpp:240
npc_syth_fire::npc_syth_fireAI::Reset
void Reset() OVERRIDE
Definition
boss_darkweaver_syth.cpp:207
npc_syth_frost::npc_syth_frostAI
Definition
boss_darkweaver_syth.cpp:313
npc_syth_frost::npc_syth_frostAI::frostbuffet_timer
uint32 frostbuffet_timer
Definition
boss_darkweaver_syth.cpp:355
npc_syth_frost::npc_syth_frostAI::frostshock_timer
uint32 frostshock_timer
Definition
boss_darkweaver_syth.cpp:354
npc_syth_frost::npc_syth_frostAI::EnterCombat
void EnterCombat(Unit *) OVERRIDE
Definition
boss_darkweaver_syth.cpp:327
npc_syth_frost::npc_syth_frostAI::npc_syth_frostAI
npc_syth_frostAI(Creature *creature)
Definition
boss_darkweaver_syth.cpp:314
npc_syth_frost::npc_syth_frostAI::UpdateAI
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
Definition
boss_darkweaver_syth.cpp:329
npc_syth_frost::npc_syth_frostAI::Reset
void Reset() OVERRIDE
Definition
boss_darkweaver_syth.cpp:320
npc_syth_shadow::npc_syth_shadowAI
Definition
boss_darkweaver_syth.cpp:370
npc_syth_shadow::npc_syth_shadowAI::EnterCombat
void EnterCombat(Unit *) OVERRIDE
Definition
boss_darkweaver_syth.cpp:384
npc_syth_shadow::npc_syth_shadowAI::npc_syth_shadowAI
npc_syth_shadowAI(Creature *creature)
Definition
boss_darkweaver_syth.cpp:371
npc_syth_shadow::npc_syth_shadowAI::UpdateAI
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
Definition
boss_darkweaver_syth.cpp:386
npc_syth_shadow::npc_syth_shadowAI::shadowbuffet_timer
uint32 shadowbuffet_timer
Definition
boss_darkweaver_syth.cpp:412
npc_syth_shadow::npc_syth_shadowAI::shadowshock_timer
uint32 shadowshock_timer
Definition
boss_darkweaver_syth.cpp:411
npc_syth_shadow::npc_syth_shadowAI::Reset
void Reset() OVERRIDE
Definition
boss_darkweaver_syth.cpp:377
src
server
scripts
Outland
Auchindoun
SethekkHalls
boss_darkweaver_syth.cpp
Generated on
for Project SkyFire Core by
1.17.0