Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
boss_mimiron.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 "
SpellScript.h
"
9
#include "
ulduar.h
"
10
11
enum
Yells
12
{
13
SAY_AGGRO
= 0,
14
SAY_HARDMODE_ON
= 1,
15
SAY_MKII_ACTIVATE
= 2,
16
SAY_MKII_SLAY
= 3,
17
SAY_MKII_DEATH
= 4,
18
SAY_VX001_ACTIVATE
= 5,
19
SAY_VX001_SLAY
= 6,
20
SAY_VX001_DEATH
= 7,
21
SAY_AERIAL_ACTIVATE
= 8,
22
SAY_AERIAL_SLAY
= 9,
23
SAY_AERIAL_DEATH
= 10,
24
SAY_V07TRON_ACTIVATE
= 11,
25
SAY_V07TRON_SLAY
= 12,
26
SAY_V07TRON_DEATH
= 13,
27
SAY_BERSERK
= 14
28
};
29
30
enum
Spells
31
{
32
SPELL_JETPACK
= 63341,
33
SPELL_EMERGENCY_MODE
= 64582,
34
SPELL_SELF_REPAIR
= 64383,
35
SPELL_MAGNETIC_CORE
= 64444,
36
// Leviathan MK II
37
SPELL_FLAME_SUPPRESSANT_MK
= 64570,
38
SPELL_NAPALM_SHELL
= 63666,
39
SPELL_PLASMA_BLAST
= 62977,
40
SPELL_PROXIMITY_MINES
= 63027,
41
SPELL_SHOCK_BLAST
= 63631,
42
// VX 001
43
SPELL_FLAME_SUPPRESSANT_VX
= 65192,
44
SPELL_FROSTBOMB
= 64623,
45
SPELL_HAND_PULSE
= 64348,
46
SPELL_SPINNING_UP
= 63414,
47
SPELL_RAPID_BURST
= 63387,
48
SPELL_P3WX2_LASER_BARRAGE
= 63293,
49
SPELL_ROCKET_STRIKE
= 63041,
50
SPELL_HEAT_WAVE
= 63677,
51
// Aerial Command Unit
52
SPELL_PLASMA_BALL
= 63689,
53
// Additonal spells
54
SPELL_MAGNETIC_FIELD
= 64668,
55
SPELL_DEAFENING_SIREN
= 64616,
56
SPELL_WATER_SPRAY
= 64619,
57
SPELL_FROST_BOMB_HARD_MODE
= 64627,
58
SPELL_EXPLOSION
= 66351,
59
SPELL_DISARM
= 1842,
60
SPELL_RIDE_VEHICLE
= 46598,
61
SPELL_TRIGGER_MISSILE
= 65347,
62
};
63
64
enum
Npc
65
{
66
NPC_ASSAULT_BOT
= 34057,
67
NPC_BOMB_BOT
= 33836,
68
NPC_JUNK_BOT
= 33855,
69
NPC_EMERGENCE_FIRE_BOT
= 34147,
70
NPC_FROST_BOMB
= 34149,
71
};
72
73
class
spell_ulduar_proximity_mines
:
public
SpellScriptLoader
74
{
75
public
:
76
spell_ulduar_proximity_mines
() :
SpellScriptLoader
(
"spell_ulduar_proximity_mines"
) { }
77
78
class
spell_ulduar_proximity_minesSpellScript
:
public
SpellScript
79
{
80
PrepareSpellScript
(
spell_ulduar_proximity_minesSpellScript
)
81
82
void
HandleScript(
SpellEffIndex
effIndex)
83
{
84
PreventHitDefaultEffect
(effIndex);
85
for
(
uint8
i = 0; i < 10; ++i)
86
GetCaster
()->
CastSpell
(
GetCaster
(),
SPELL_TRIGGER_MISSILE
,
true
);
87
}
88
89
void
Register
()
OVERRIDE
90
{
91
OnEffectHitTarget
+=
SpellEffectFn
(spell_ulduar_proximity_minesSpellScript::HandleScript,
EFFECT_0
,
SPELL_EFFECT_SCRIPT_EFFECT
);
92
}
93
};
94
95
SpellScript
*
GetSpellScript
() const
OVERRIDE
96
{
97
return
new
spell_ulduar_proximity_minesSpellScript
();
98
}
99
};
100
101
void
AddSC_boss_mimiron
()
102
{
103
new
spell_ulduar_proximity_mines
();
104
}
Spells
Spells
Definition
BattlegroundIC.h:645
uint8
std::uint8_t uint8
Definition
Define.h:79
OVERRIDE
#define OVERRIDE
Definition
Define.h:60
ScriptMgr.h
ScriptedCreature.h
SpellEffIndex
SpellEffIndex
Definition
SharedDefines.h:17
EFFECT_0
@ EFFECT_0
Definition
SharedDefines.h:18
SPELL_EFFECT_SCRIPT_EFFECT
@ SPELL_EFFECT_SCRIPT_EFFECT
Definition
SharedDefines.h:965
SpellScript.h
SpellEffectFn
#define SpellEffectFn(F, I, N)
Definition
SpellScript.h:269
SAY_BERSERK
@ SAY_BERSERK
Definition
boss_akilzon.cpp:17
SAY_AGGRO
#define SAY_AGGRO
Definition
boss_commander_kolurg.cpp:28
SPELL_RIDE_VEHICLE
@ SPELL_RIDE_VEHICLE
Definition
boss_deathbringer_saurfang.cpp:102
AddSC_boss_mimiron
void AddSC_boss_mimiron()
Definition
boss_mimiron.cpp:101
SAY_AERIAL_SLAY
@ SAY_AERIAL_SLAY
Definition
boss_mimiron.cpp:22
SAY_AERIAL_ACTIVATE
@ SAY_AERIAL_ACTIVATE
Definition
boss_mimiron.cpp:21
SAY_MKII_SLAY
@ SAY_MKII_SLAY
Definition
boss_mimiron.cpp:16
SAY_VX001_ACTIVATE
@ SAY_VX001_ACTIVATE
Definition
boss_mimiron.cpp:18
SAY_V07TRON_ACTIVATE
@ SAY_V07TRON_ACTIVATE
Definition
boss_mimiron.cpp:24
SAY_AERIAL_DEATH
@ SAY_AERIAL_DEATH
Definition
boss_mimiron.cpp:23
SAY_VX001_DEATH
@ SAY_VX001_DEATH
Definition
boss_mimiron.cpp:20
SAY_V07TRON_SLAY
@ SAY_V07TRON_SLAY
Definition
boss_mimiron.cpp:25
SAY_MKII_DEATH
@ SAY_MKII_DEATH
Definition
boss_mimiron.cpp:17
SAY_VX001_SLAY
@ SAY_VX001_SLAY
Definition
boss_mimiron.cpp:19
SAY_HARDMODE_ON
@ SAY_HARDMODE_ON
Definition
boss_mimiron.cpp:14
SAY_V07TRON_DEATH
@ SAY_V07TRON_DEATH
Definition
boss_mimiron.cpp:26
SAY_MKII_ACTIVATE
@ SAY_MKII_ACTIVATE
Definition
boss_mimiron.cpp:15
SPELL_PLASMA_BLAST
@ SPELL_PLASMA_BLAST
Definition
boss_mimiron.cpp:39
SPELL_JETPACK
@ SPELL_JETPACK
Definition
boss_mimiron.cpp:32
SPELL_MAGNETIC_FIELD
@ SPELL_MAGNETIC_FIELD
Definition
boss_mimiron.cpp:54
SPELL_SHOCK_BLAST
@ SPELL_SHOCK_BLAST
Definition
boss_mimiron.cpp:41
SPELL_RAPID_BURST
@ SPELL_RAPID_BURST
Definition
boss_mimiron.cpp:47
SPELL_ROCKET_STRIKE
@ SPELL_ROCKET_STRIKE
Definition
boss_mimiron.cpp:49
SPELL_EMERGENCY_MODE
@ SPELL_EMERGENCY_MODE
Definition
boss_mimiron.cpp:33
SPELL_PLASMA_BALL
@ SPELL_PLASMA_BALL
Definition
boss_mimiron.cpp:52
SPELL_SELF_REPAIR
@ SPELL_SELF_REPAIR
Definition
boss_mimiron.cpp:34
SPELL_FROST_BOMB_HARD_MODE
@ SPELL_FROST_BOMB_HARD_MODE
Definition
boss_mimiron.cpp:57
SPELL_TRIGGER_MISSILE
@ SPELL_TRIGGER_MISSILE
Definition
boss_mimiron.cpp:61
SPELL_HAND_PULSE
@ SPELL_HAND_PULSE
Definition
boss_mimiron.cpp:45
SPELL_NAPALM_SHELL
@ SPELL_NAPALM_SHELL
Definition
boss_mimiron.cpp:38
SPELL_MAGNETIC_CORE
@ SPELL_MAGNETIC_CORE
Definition
boss_mimiron.cpp:35
SPELL_WATER_SPRAY
@ SPELL_WATER_SPRAY
Definition
boss_mimiron.cpp:56
SPELL_HEAT_WAVE
@ SPELL_HEAT_WAVE
Definition
boss_mimiron.cpp:50
SPELL_FLAME_SUPPRESSANT_MK
@ SPELL_FLAME_SUPPRESSANT_MK
Definition
boss_mimiron.cpp:37
SPELL_DEAFENING_SIREN
@ SPELL_DEAFENING_SIREN
Definition
boss_mimiron.cpp:55
SPELL_SPINNING_UP
@ SPELL_SPINNING_UP
Definition
boss_mimiron.cpp:46
SPELL_PROXIMITY_MINES
@ SPELL_PROXIMITY_MINES
Definition
boss_mimiron.cpp:40
SPELL_FLAME_SUPPRESSANT_VX
@ SPELL_FLAME_SUPPRESSANT_VX
Definition
boss_mimiron.cpp:43
SPELL_P3WX2_LASER_BARRAGE
@ SPELL_P3WX2_LASER_BARRAGE
Definition
boss_mimiron.cpp:48
Npc
Npc
Definition
boss_mimiron.cpp:65
NPC_BOMB_BOT
@ NPC_BOMB_BOT
Definition
boss_mimiron.cpp:67
NPC_ASSAULT_BOT
@ NPC_ASSAULT_BOT
Definition
boss_mimiron.cpp:66
NPC_EMERGENCE_FIRE_BOT
@ NPC_EMERGENCE_FIRE_BOT
Definition
boss_mimiron.cpp:69
NPC_JUNK_BOT
@ NPC_JUNK_BOT
Definition
boss_mimiron.cpp:68
SPELL_DISARM
@ SPELL_DISARM
Definition
boss_moroes.cpp:57
SPELL_EXPLOSION
@ SPELL_EXPLOSION
Definition
boss_the_lich_king.cpp:143
SPELL_FROSTBOMB
@ SPELL_FROSTBOMB
Definition
boss_urom.cpp:23
SpellScript
Definition
SpellScript.h:139
SpellScript::PreventHitDefaultEffect
void PreventHitDefaultEffect(SpellEffIndex effIndex)
Definition
SpellScript.cpp:541
SpellScript::OnEffectHitTarget
HookList< EffectHandler > OnEffectHitTarget
Definition
SpellScript.h:268
SpellScript::GetCaster
Unit * GetCaster()
Definition
SpellScript.cpp:352
SpellScriptLoader::SpellScriptLoader
SpellScriptLoader(const char *name)
Definition
ScriptMgr.cpp:1372
Unit::CastSpell
void CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=NULL, AuraEffect const *triggeredByAura=NULL, uint64 originalCaster=0)
Definition
UnitCombat.cpp:324
spell_ulduar_proximity_mines::spell_ulduar_proximity_minesSpellScript
Definition
boss_mimiron.cpp:79
spell_ulduar_proximity_mines::spell_ulduar_proximity_minesSpellScript::PrepareSpellScript
PrepareSpellScript(spell_ulduar_proximity_minesSpellScript) void HandleScript(SpellEffIndex effIndex)
Definition
boss_mimiron.cpp:80
spell_ulduar_proximity_mines::spell_ulduar_proximity_minesSpellScript::Register
void Register() OVERRIDE
Definition
boss_mimiron.cpp:89
spell_ulduar_proximity_mines
Definition
boss_mimiron.cpp:74
spell_ulduar_proximity_mines::spell_ulduar_proximity_mines
spell_ulduar_proximity_mines()
Definition
boss_mimiron.cpp:76
spell_ulduar_proximity_mines::GetSpellScript
SpellScript * GetSpellScript() const OVERRIDE
Definition
boss_mimiron.cpp:95
NPC_FROST_BOMB
@ NPC_FROST_BOMB
Definition
icecrown_citadel.h:252
Yells
Definition
boss_illidan.cpp:256
ulduar.h
src
server
scripts
Northrend
Ulduar
Ulduar
boss_mimiron.cpp
Generated on
for Project SkyFire Core by
1.17.0