Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
boss_tinkerer_gizlock.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_Tinkerer_Gizlock
8
SD%Complete: 100
9
SDComment:
10
SDCategory: Maraudon
11
EndScriptData */
12
13
#include "
ScriptMgr.h
"
14
#include "
ScriptedCreature.h
"
15
16
enum
Spells
17
{
18
SAY_AGGRO
= 0,
19
SPELL_BOMB
= 9143,
20
SPELL_GOBLIN_DRAGON_GUN
= 21833,
21
};
22
23
class
boss_tinkerer_gizlock
:
public
CreatureScript
24
{
25
public
:
26
boss_tinkerer_gizlock
() :
CreatureScript
(
"boss_tinkerer_gizlock"
) { }
27
28
CreatureAI
*
GetAI
(
Creature
* creature)
const
OVERRIDE
29
{
30
return
new
boss_tinkerer_gizlockAI
(creature);
31
}
32
33
struct
boss_tinkerer_gizlockAI
:
public
ScriptedAI
34
{
35
boss_tinkerer_gizlockAI
(
Creature
* creature) :
ScriptedAI
(creature)
36
{
37
uiBombTimer
= 0;
38
uiGoblinDragonGunTimer
= 0;
39
}
40
41
void
Reset
()
OVERRIDE
42
{
43
uiBombTimer
= 2000;
44
uiGoblinDragonGunTimer
= 13000;
45
}
46
47
void
EnterCombat
(
Unit
*
/*who*/
)
OVERRIDE
48
{
49
Talk
(
SAY_AGGRO
);
50
}
51
52
void
UpdateAI
(
uint32
diff)
OVERRIDE
53
{
54
if
(!
UpdateVictim
())
55
return
;
56
57
//uiBombTimer
58
if
(
uiBombTimer
<= diff)
59
{
60
DoCastVictim
(
SPELL_BOMB
);
61
uiBombTimer
= 2000;
62
}
63
else
uiBombTimer
-= diff;
64
65
//uiGoblinDragonGunTimer
66
if
(
uiGoblinDragonGunTimer
<= diff)
67
{
68
DoCastVictim
(
SPELL_GOBLIN_DRAGON_GUN
);
69
uiGoblinDragonGunTimer
= 17000;
70
}
71
else
uiGoblinDragonGunTimer
-= diff;
72
73
DoMeleeAttackIfReady
();
74
}
75
76
private
:
77
uint32
uiBombTimer
;
78
uint32
uiGoblinDragonGunTimer
;
79
};
80
};
81
82
void
AddSC_boss_tinkerer_gizlock
()
83
{
84
new
boss_tinkerer_gizlock
();
85
}
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
SAY_AGGRO
#define SAY_AGGRO
Definition
boss_commander_kolurg.cpp:28
SPELL_GOBLIN_DRAGON_GUN
@ SPELL_GOBLIN_DRAGON_GUN
Definition
boss_priestess_delrissa.cpp:1194
SPELL_BOMB
@ SPELL_BOMB
Definition
boss_tinkerer_gizlock.cpp:19
SAY_AGGRO
@ SAY_AGGRO
Definition
boss_tinkerer_gizlock.cpp:18
SPELL_GOBLIN_DRAGON_GUN
@ SPELL_GOBLIN_DRAGON_GUN
Definition
boss_tinkerer_gizlock.cpp:20
AddSC_boss_tinkerer_gizlock
void AddSC_boss_tinkerer_gizlock()
Definition
boss_tinkerer_gizlock.cpp:82
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::DoCastVictim
void DoCastVictim(uint32 spellId, bool triggered=false)
Definition
UnitAI.cpp:168
Unit
Definition
Unit.h:1367
boss_tinkerer_gizlock
Definition
boss_tinkerer_gizlock.cpp:24
boss_tinkerer_gizlock::boss_tinkerer_gizlock
boss_tinkerer_gizlock()
Definition
boss_tinkerer_gizlock.cpp:26
boss_tinkerer_gizlock::GetAI
CreatureAI * GetAI(Creature *creature) const OVERRIDE
Definition
boss_tinkerer_gizlock.cpp:28
ScriptedAI::ScriptedAI
ScriptedAI(Creature *creature)
Definition
ScriptedCreature.cpp:85
boss_tinkerer_gizlock::boss_tinkerer_gizlockAI
Definition
boss_tinkerer_gizlock.cpp:34
boss_tinkerer_gizlock::boss_tinkerer_gizlockAI::EnterCombat
void EnterCombat(Unit *) OVERRIDE
Definition
boss_tinkerer_gizlock.cpp:47
boss_tinkerer_gizlock::boss_tinkerer_gizlockAI::Reset
void Reset() OVERRIDE
Definition
boss_tinkerer_gizlock.cpp:41
boss_tinkerer_gizlock::boss_tinkerer_gizlockAI::boss_tinkerer_gizlockAI
boss_tinkerer_gizlockAI(Creature *creature)
Definition
boss_tinkerer_gizlock.cpp:35
boss_tinkerer_gizlock::boss_tinkerer_gizlockAI::uiBombTimer
uint32 uiBombTimer
Definition
boss_tinkerer_gizlock.cpp:77
boss_tinkerer_gizlock::boss_tinkerer_gizlockAI::UpdateAI
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
Definition
boss_tinkerer_gizlock.cpp:52
boss_tinkerer_gizlock::boss_tinkerer_gizlockAI::uiGoblinDragonGunTimer
uint32 uiGoblinDragonGunTimer
Definition
boss_tinkerer_gizlock.cpp:78
src
server
scripts
Kalimdor
Maraudon
boss_tinkerer_gizlock.cpp
Generated on
for Project SkyFire Core by
1.17.0