Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
boss_quartermaster_zigris.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 "
blackrock_spire.h
"
9
10
enum
Spells
11
{
12
SPELL_SHOOT
= 16496,
13
SPELL_STUNBOMB
= 16497,
14
SPELL_HEALING_POTION
= 15504,
15
SPELL_HOOKEDNET
= 15609
16
};
17
18
enum
Events
19
{
20
EVENT_SHOOT
= 1,
21
EVENT_STUN_BOMB
= 2
22
};
23
24
class
quartermaster_zigris
:
public
CreatureScript
25
{
26
public
:
27
quartermaster_zigris
() :
CreatureScript
(
"quartermaster_zigris"
) { }
28
29
struct
boss_quatermasterzigrisAI
:
public
BossAI
30
{
31
boss_quatermasterzigrisAI
(
Creature
* creature) :
BossAI
(creature,
DATA_QUARTERMASTER_ZIGRIS
) { }
32
33
void
Reset
()
OVERRIDE
34
{
35
_Reset
();
36
}
37
38
void
EnterCombat
(
Unit
*
/*who*/
)
OVERRIDE
39
{
40
_EnterCombat
();
41
events
.ScheduleEvent(
EVENT_SHOOT
, 1000);
42
events
.ScheduleEvent(
EVENT_STUN_BOMB
, 16000);
43
}
44
45
void
JustDied
(
Unit
*
/*killer*/
)
OVERRIDE
46
{
47
_JustDied
();
48
}
49
50
void
UpdateAI
(
uint32
diff)
OVERRIDE
51
{
52
if
(!
UpdateVictim
())
53
return
;
54
55
events
.Update(diff);
56
57
if
(
me
->HasUnitState(
UNIT_STATE_CASTING
))
58
return
;
59
60
while
(
uint32
eventId =
events
.ExecuteEvent())
61
{
62
switch
(eventId)
63
{
64
case
EVENT_SHOOT
:
65
DoCastVictim
(
SPELL_SHOOT
);
66
events
.ScheduleEvent(
EVENT_SHOOT
, 500);
67
break
;
68
case
EVENT_STUN_BOMB
:
69
DoCastVictim
(
SPELL_STUNBOMB
);
70
events
.ScheduleEvent(
EVENT_STUN_BOMB
, 14000);
71
break
;
72
}
73
}
74
DoMeleeAttackIfReady
();
75
}
76
};
77
78
CreatureAI
*
GetAI
(
Creature
* creature)
const
OVERRIDE
79
{
80
return
new
boss_quatermasterzigrisAI
(creature);
81
}
82
};
83
84
void
AddSC_boss_quatermasterzigris
()
85
{
86
new
quartermaster_zigris
();
87
}
Spells
Spells
Definition
BattlegroundIC.h:645
uint32
std::uint32_t uint32
Definition
Define.h:77
OVERRIDE
#define OVERRIDE
Definition
Define.h:60
ScriptMgr.h
ScriptedCreature.h
UNIT_STATE_CASTING
@ UNIT_STATE_CASTING
Definition
Unit.h:527
Events
Events
Definition
alterac_valley.cpp:40
blackrock_spire.h
DATA_QUARTERMASTER_ZIGRIS
@ DATA_QUARTERMASTER_ZIGRIS
Definition
blackrock_spire.h:20
AddSC_boss_quatermasterzigris
void AddSC_boss_quatermasterzigris()
Definition
boss_quartermaster_zigris.cpp:84
SPELL_HEALING_POTION
@ SPELL_HEALING_POTION
Definition
boss_quartermaster_zigris.cpp:14
SPELL_SHOOT
@ SPELL_SHOOT
Definition
boss_quartermaster_zigris.cpp:12
SPELL_STUNBOMB
@ SPELL_STUNBOMB
Definition
boss_quartermaster_zigris.cpp:13
SPELL_HOOKEDNET
@ SPELL_HOOKEDNET
Definition
boss_quartermaster_zigris.cpp:15
EVENT_SHOOT
@ EVENT_SHOOT
Definition
boss_quartermaster_zigris.cpp:20
EVENT_STUN_BOMB
@ EVENT_STUN_BOMB
Definition
boss_quartermaster_zigris.cpp:21
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::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::DoCastVictim
void DoCastVictim(uint32 spellId, bool triggered=false)
Definition
UnitAI.cpp:168
Unit
Definition
Unit.h:1367
quartermaster_zigris
Definition
boss_quartermaster_zigris.cpp:25
quartermaster_zigris::quartermaster_zigris
quartermaster_zigris()
Definition
boss_quartermaster_zigris.cpp:27
quartermaster_zigris::GetAI
CreatureAI * GetAI(Creature *creature) const OVERRIDE
Definition
boss_quartermaster_zigris.cpp:78
ScriptedAI::me
Creature * me
Definition
ScriptedCreature.h:182
quartermaster_zigris::boss_quatermasterzigrisAI
Definition
boss_quartermaster_zigris.cpp:30
quartermaster_zigris::boss_quatermasterzigrisAI::JustDied
void JustDied(Unit *) OVERRIDE
Definition
boss_quartermaster_zigris.cpp:45
quartermaster_zigris::boss_quatermasterzigrisAI::UpdateAI
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
Definition
boss_quartermaster_zigris.cpp:50
quartermaster_zigris::boss_quatermasterzigrisAI::Reset
void Reset() OVERRIDE
Definition
boss_quartermaster_zigris.cpp:33
quartermaster_zigris::boss_quatermasterzigrisAI::boss_quatermasterzigrisAI
boss_quatermasterzigrisAI(Creature *creature)
Definition
boss_quartermaster_zigris.cpp:31
quartermaster_zigris::boss_quatermasterzigrisAI::EnterCombat
void EnterCombat(Unit *) OVERRIDE
Definition
boss_quartermaster_zigris.cpp:38
src
server
scripts
EasternKingdoms
BlackrockMountain
BlackrockSpire
boss_quartermaster_zigris.cpp
Generated on
for Project SkyFire Core by
1.17.0