Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
boss_thorim.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 "
ulduar.h
"
9
10
enum
Yells
11
{
12
SAY_AGGRO
= 0,
13
SAY_SPECIAL_1
= 1,
14
SAY_SPECIAL_2
= 2,
15
SAY_SPECIAL_3
= 3,
16
SAY_JUMPDOWN
= 4,
17
SAY_SLAY
= 5,
18
SAY_BERSERK
= 6,
19
SAY_WIPE
= 7,
20
SAY_DEATH
= 8,
21
SAY_END_NORMAL_1
= 9,
22
SAY_END_NORMAL_2
= 10,
23
SAY_END_NORMAL_3
= 11,
24
SAY_END_HARD_1
= 12,
25
SAY_END_HARD_2
= 13,
26
SAY_END_HARD_3
= 14
27
};
28
29
class
boss_thorim
:
public
CreatureScript
30
{
31
public
:
32
boss_thorim
() :
CreatureScript
(
"boss_thorim"
) { }
33
34
struct
boss_thorimAI
:
public
BossAI
35
{
36
boss_thorimAI
(
Creature
* creature) :
BossAI
(creature,
BOSS_THORIM
)
37
{
38
}
39
40
void
Reset
()
OVERRIDE
41
{
42
_Reset
();
43
}
44
45
void
EnterEvadeMode
()
OVERRIDE
46
{
47
Talk
(
SAY_WIPE
);
48
_EnterEvadeMode
();
49
}
50
51
void
KilledUnit
(
Unit
* who)
OVERRIDE
52
{
53
if
(who->GetTypeId() ==
TypeID::TYPEID_PLAYER
)
54
Talk
(
SAY_SLAY
);
55
}
56
57
void
JustDied
(
Unit
*
/*killer*/
)
OVERRIDE
58
{
59
Talk
(
SAY_DEATH
);
60
_JustDied
();
61
}
62
63
void
EnterCombat
(
Unit
*
/*who*/
)
OVERRIDE
64
{
65
Talk
(
SAY_AGGRO
);
66
_EnterCombat
();
67
}
68
69
void
UpdateAI
(
uint32
diff)
OVERRIDE
70
{
71
if
(!
UpdateVictim
())
72
return
;
73
//SPELLS @todo
74
75
//
76
DoMeleeAttackIfReady
();
77
78
EnterEvadeIfOutOfCombatArea
(diff);
79
}
80
};
81
82
CreatureAI
*
GetAI
(
Creature
* creature)
const
OVERRIDE
83
{
84
return
GetUlduarAI<boss_thorimAI>
(creature);
85
}
86
};
87
88
void
AddSC_boss_thorim
()
89
{
90
new
boss_thorim
();
91
}
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
SAY_BERSERK
@ SAY_BERSERK
Definition
boss_akilzon.cpp:17
SAY_SLAY
@ SAY_SLAY
Definition
boss_alizabal.cpp:20
SAY_WIPE
@ SAY_WIPE
Definition
boss_blood_queen_lana_thel.cpp:25
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_thorim.cpp:20
SAY_WIPE
@ SAY_WIPE
Definition
boss_thorim.cpp:19
SAY_SPECIAL_3
@ SAY_SPECIAL_3
Definition
boss_thorim.cpp:15
SAY_SPECIAL_1
@ SAY_SPECIAL_1
Definition
boss_thorim.cpp:13
SAY_AGGRO
@ SAY_AGGRO
Definition
boss_thorim.cpp:12
SAY_END_HARD_3
@ SAY_END_HARD_3
Definition
boss_thorim.cpp:26
SAY_END_NORMAL_3
@ SAY_END_NORMAL_3
Definition
boss_thorim.cpp:23
SAY_SPECIAL_2
@ SAY_SPECIAL_2
Definition
boss_thorim.cpp:14
SAY_END_NORMAL_2
@ SAY_END_NORMAL_2
Definition
boss_thorim.cpp:22
SAY_END_NORMAL_1
@ SAY_END_NORMAL_1
Definition
boss_thorim.cpp:21
SAY_SLAY
@ SAY_SLAY
Definition
boss_thorim.cpp:17
SAY_END_HARD_1
@ SAY_END_HARD_1
Definition
boss_thorim.cpp:24
SAY_JUMPDOWN
@ SAY_JUMPDOWN
Definition
boss_thorim.cpp:16
SAY_END_HARD_2
@ SAY_END_HARD_2
Definition
boss_thorim.cpp:25
AddSC_boss_thorim
void AddSC_boss_thorim()
Definition
boss_thorim.cpp:88
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::_EnterEvadeMode
bool _EnterEvadeMode()
Definition
CreatureAI.cpp:212
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
Unit
Definition
Unit.h:1367
boss_thorim
Definition
boss_thorim.cpp:30
boss_thorim::boss_thorim
boss_thorim()
Definition
boss_thorim.cpp:32
boss_thorim::GetAI
CreatureAI * GetAI(Creature *creature) const OVERRIDE
Definition
boss_thorim.cpp:82
ScriptedAI::EnterEvadeIfOutOfCombatArea
bool EnterEvadeIfOutOfCombatArea(uint32 const diff)
Definition
ScriptedCreature.cpp:409
Yells
Definition
boss_illidan.cpp:256
boss_thorim::boss_thorimAI::boss_thorimAI
boss_thorimAI(Creature *creature)
Definition
boss_thorim.cpp:36
boss_thorim::boss_thorimAI::EnterEvadeMode
void EnterEvadeMode() OVERRIDE
Definition
boss_thorim.cpp:45
boss_thorim::boss_thorimAI::EnterCombat
void EnterCombat(Unit *) OVERRIDE
Definition
boss_thorim.cpp:63
boss_thorim::boss_thorimAI::Reset
void Reset() OVERRIDE
Definition
boss_thorim.cpp:40
boss_thorim::boss_thorimAI::KilledUnit
void KilledUnit(Unit *who) OVERRIDE
Definition
boss_thorim.cpp:51
boss_thorim::boss_thorimAI::UpdateAI
void UpdateAI(uint32 diff) OVERRIDE
== Triggered Actions Requested ==================
Definition
boss_thorim.cpp:69
boss_thorim::boss_thorimAI::JustDied
void JustDied(Unit *) OVERRIDE
Definition
boss_thorim.cpp:57
ulduar.h
BOSS_THORIM
@ BOSS_THORIM
Definition
ulduar.h:29
GetUlduarAI
AI * GetUlduarAI(T *obj)
Definition
ulduar.h:336
src
server
scripts
Northrend
Ulduar
Ulduar
boss_thorim.cpp
Generated on
for Project SkyFire Core by
1.17.0