AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
boss_mimiron.cpp File Reference
#include "AchievementCriteriaScript.h"
#include "Containers.h"
#include "CreatureScript.h"
#include "GameObjectScript.h"
#include "GameTime.h"
#include "GridNotifiers.h"
#include "MapMgr.h"
#include "ObjectAccessor.h"
#include "PassiveAI.h"
#include "Player.h"
#include "ScriptedCreature.h"
#include "SharedDefines.h"
#include "Spell.h"
#include "SpellAuraEffects.h"
#include "SpellScript.h"
#include "SpellScriptLoader.h"
#include "Vehicle.h"
#include "ulduar.h"

Go to the source code of this file.

Classes

struct  boss_mimiron
 
struct  npc_ulduar_leviathan_mkii
 
struct  npc_ulduar_vx001
 
struct  npc_ulduar_aerial_command_unit
 
struct  npc_ulduar_proximity_mine
 
class  spell_ulduar_mimiron_mine_explosion
 
class  spell_mimiron_rocket_strike
 
class  spell_mimiron_rocket_strike_target_select
 
struct  npc_ulduar_mimiron_rocket
 
class  spell_mimiron_summon_rocket_strike
 
struct  npc_ulduar_bot_summon_trigger
 
class  spell_mimiron_magnetic_core_summon
 
class  spell_mimiron_magnetic_core_aura
 
class  spell_mimiron_rapid_burst_aura
 
class  spell_mimiron_p3wx2_laser_barrage_aura
 
class  go_ulduar_do_not_push_this_button
 
struct  npc_ulduar_flames_initial
 
struct  npc_ulduar_flames_spread
 
struct  npc_ulduar_emergency_fire_bot
 
struct  npc_ulduar_rocket_strike_trigger
 
class  spell_mimiron_rocket_strike_aura
 
class  achievement_mimiron_firefighter
 
class  achievement_mimiron_set_up_us_the_bomb_11
 
class  achievement_mimiron_set_up_us_the_bomb_12
 
class  achievement_mimiron_set_up_us_the_bomb_13
 

Macros

#define GetMimiron()   instance->GetCreature(BOSS_MIMIRON)
 
#define GetLMK2()   instance->GetCreature(DATA_MIMIRON_LEVIATHAN_MKII)
 
#define GetVX001()   instance->GetCreature(DATA_MIMIRON_VX001)
 
#define GetACU()   instance->GetCreature(DATA_MIMIRON_ACU)
 

Enumerations

enum  SpellData {
  SPELL_BERSERK = 64238 ,
  SPELL_NAPALM_SHELL = 63666 ,
  SPELL_PLASMA_BLAST = 62997 ,
  SPELL_SHOCK_BLAST = 63631 ,
  SPELL_PROXIMITY_MINES = 63027 ,
  NPC_PROXIMITY_MINE = 34362 ,
  SPELL_MINE_EXPLOSION = 66351 ,
  SPELL_SUMMON_PROXIMITY_MINE = 65347 ,
  SPELL_ELEVATOR_KNOCKBACK = 65096 ,
  SPELL_HEAT_WAVE = 64533 ,
  SPELL_ROCKET_STRIKE_AURA = 64064 ,
  SPELL_ROCKET_STRIKE_SINGLE = 64402 ,
  SPELL_ROCKET_STRIKE_BOTH = 65034 ,
  SPELL_ROCKET_STRIKE_TARGET = 63681 ,
  SPELL_SUMMON_ROCKET_STRIKE = 63036 ,
  SPELL_ROCKET_STRIKE_DAMAGE = 63041 ,
  NPC_ROCKET_VISUAL = 34050 ,
  NPC_ROCKET_STRIKE_N = 34047 ,
  SPELL_RAPID_BURST = 63382 ,
  SPELL_RAPID_BURST_DAMAGE_1 = 63387 ,
  SPELL_RAPID_BURST_DAMAGE_2 = 64019 ,
  SPELL_SUMMON_BURST_TARGET = 64840 ,
  SPELL_SPINNING_UP = 63414 ,
  SPELL_PLASMA_BALL_P1 = 63689 ,
  SPELL_PLASMA_BALL_P2 = 65647 ,
  SPELL_MAGNETIC_CORE = 64436 ,
  SPELL_MAGNETIC_CORE_VISUAL = 64438 ,
  SPELL_MAGNETIC_CORE_SUMMON = 64444 ,
  SPELL_SUMMON_BOMB_BOT = 63811 ,
  SPELL_BB_EXPLODE = 63801 ,
  SPELL_BEAM_GREEN = 63295 ,
  SPELL_BEAM_YELLOW = 63292 ,
  SPELL_BEAM_BLUE = 63294 ,
  SPELL_HAND_PULSE_R = 64352 ,
  SPELL_HAND_PULSE_L = 64348 ,
  SPELL_SELF_REPAIR = 64383 ,
  SPELL_SLEEP_VISUAL_1 = 64393 ,
  SPELL_SLEEP_VISUAL_2 = 64394
}
 
enum  NPCs {
  NPC_LEVIATHAN_MKII = 33432 ,
  NPC_LEVIATHAN_MKII_CANNON = 34071 ,
  NPC_VX001 = 33651 ,
  NPC_AERIAL_COMMAND_UNIT = 33670 ,
  NPC_COMPUTER = 34143 ,
  NPC_BOMB_BOT = 33836 ,
  NPC_BOT_SUMMON_TRIGGER = 33856 ,
  NPC_ASSAULT_BOT = 34057 ,
  NPC_JUNK_BOT = 33855 ,
  NPC_MAGNETIC_CORE = 34068 ,
  NPC_WORLD_TRIGGER = 21252
}
 
enum  GOs {
  GO_DOOR_1 = 194776 ,
  GO_DOOR_2 = 194774 ,
  GO_DOOR_3 = 194775 ,
  GO_BUTTON = 194739
}
 
enum  HardMode {
  SPELL_EMERGENCY_MODE = 64582 ,
  SPELL_SELF_DESTRUCT = 64610 ,
  SPELL_SUMMON_FLAMES_INITIAL = 64563 ,
  NPC_FLAMES_INITIAL = 34363 ,
  SPELL_SUMMON_FLAMES_SPREAD = 64564 ,
  NPC_FLAMES_SPREAD = 34121 ,
  SPELL_FLAMES_AURA = 64561 ,
  SPELL_VX001_FROST_BOMB = 64623 ,
  SPELL_FROST_BOMB_VISUAL_AURA = 64624 ,
  SPELL_SUMMON_FROST_BOMB = 64627 ,
  NPC_FROST_BOMB = 34149 ,
  SPELL_FROST_BOMB_EXPLOSION_10 = 64626 ,
  SPELL_FROST_BOMB_EXPLOSION_25 = 65333 ,
  SPELL_FLAME_SUPPRESSANT_10yd = 65192 ,
  SPELL_FLAME_SUPPRESSANT_50000yd = 64570 ,
  SPELL_WATER_SPRAY = 64619 ,
  SPELL_DEAFENING_SIREN = 64616 ,
  NPC_EMERGENCY_FIRE_BOT = 34147 ,
  SPELL_ENTER_VEHICLE_0 = 63112 ,
  SPELL_ENTER_VEHICLE_1 = 63313 ,
  SPELL_ENTER_VEHICLE_2 = 63314 ,
  SPELL_ENTER_VEHICLE_4 = 63316
}
 
enum  EVENTS {
  EVENT_SIT_LMK2 = 1 ,
  EVENT_SIT_LMK2_INTERVAL = 2 ,
  EVENT_LMK2_RETREAT_INTERVAL = 7 ,
  EVENT_ELEVATOR_INTERVAL_1 = 8 ,
  EVENT_ELEVATOR_INTERVAL_2 = 9 ,
  EVENT_SITTING_ON_VX001 = 10 ,
  EVENT_ENTER_VX001 = 11 ,
  EVENT_EMOTE_VX001 = 12 ,
  EVENT_VX001_START_FIGHT = 13 ,
  EVENT_ELEVATOR_INTERVAL_0 = 14 ,
  EVENT_GET_OUT_VX001 = 21 ,
  EVENT_SAY_VX001_DEAD = 22 ,
  EVENT_ENTER_ACU = 23 ,
  EVENT_SAY_ACU_ACTIVATE = 24 ,
  EVENT_ACU_START_ATTACK = 25 ,
  EVENT_VX001_EMOTESTATE_DEATH = 26 ,
  EVENT_SAY_ACU_DEAD = 31 ,
  EVENT_LEVIATHAN_COME_CLOSER = 32 ,
  EVENT_VX001_EMOTE_JUMP = 33 ,
  EVENT_LEVIATHAN_RIDE_MIDDLE = 34 ,
  EVENT_JOIN_TOGETHER = 342 ,
  EVENT_JOIN_ACU = 35 ,
  EVENT_START_PHASE4 = 36 ,
  EVENT_FINISH = 50 ,
  EVENT_STAND_UP_FRIENDLY = 51 ,
  EVENT_SAY_VOLTRON_DEAD = 52 ,
  EVENT_DISAPPEAR = 53 ,
  EVENT_BERSERK = 54 ,
  EVENT_BERSERK_2 = 55 ,
  EVENT_SPELL_NAPALM_SHELL = 3 ,
  EVENT_SPELL_PLASMA_BLAST = 4 ,
  EVENT_SPELL_SHOCK_BLAST = 5 ,
  EVENT_PROXIMITY_MINES_1 = 6 ,
  EVENT_SPELL_HEAT_WAVE = 15 ,
  EVENT_SPELL_ROCKET_STRIKE = 16 ,
  EVENT_REINSTALL_ROCKETS = 17 ,
  EVENT_SPELL_RAPID_BURST = 18 ,
  EVENT_SPELL_RAPID_BURST_INTERVAL = 19 ,
  EVENT_SPELL_SPINNING_UP = 20 ,
  EVENT_HAND_PULSE = 37 ,
  EVENT_SPELL_PLASMA_BALL = 27 ,
  EVENT_SUMMON_BOMB_BOT = 28 ,
  EVENT_BOMB_BOT_CHASE = 29 ,
  EVENT_BOMB_BOT_RELOCATE = 30 ,
  EVENT_SUMMON_ASSAULT_BOT = 40 ,
  EVENT_SUMMON_JUNK_BOT = 41 ,
  EVENT_COMPUTER_SAY_INITIATED = 60 ,
  EVENT_COMPUTER_SAY_MINUTES = 61 ,
  EVENT_MIMIRON_SAY_HARDMODE = 62 ,
  EVENT_SPAWN_FLAMES_INITIAL = 63 ,
  EVENT_FLAMES_SPREAD = 64 ,
  EVENT_FLAME_SUPPRESSION_50000 = 65 ,
  EVENT_FLAME_SUPPRESSION_10 = 66 ,
  EVENT_FROST_BOMB = 67 ,
  EVENT_SUMMON_EMERGENCY_FIRE_BOTS = 68 ,
  EVENT_EMERGENCY_BOT_CHECK = 69 ,
  EVENT_EMERGENCY_BOT_ATTACK = 70 ,
  EVENT_ROCKET_FIRE = 71
}
 
enum  Actions {
  DO_DISABLE_AERIAL = 1 ,
  DO_ENABLE_AERIAL ,
  DO_DESPAWN_SUMMONS
}
 
enum  Texts {
  SAY_AGGRO = 0 ,
  SAY_HARDMODE_ON = 1 ,
  SAY_MKII_ACTIVATE = 2 ,
  SAY_MKII_SLAY = 3 ,
  SAY_MKII_DEATH = 4 ,
  SAY_VX001_ACTIVATE = 5 ,
  SAY_VX001_SLAY = 6 ,
  SAY_VX001_DEATH = 7 ,
  SAY_AERIAL_ACTIVATE = 8 ,
  SAY_AERIAL_SLAY = 9 ,
  SAY_AERIAL_DEATH = 10 ,
  SAY_V07TRON_ACTIVATE = 11 ,
  SAY_V07TRON_SLAY = 12 ,
  SAY_V07TRON_DEATH = 13 ,
  SAY_BERSERK = 14 ,
  EMOTE_PLASMA_BLAST = 0 ,
  TALK_COMPUTER_INITIATED = 0 ,
  TALK_COMPUTER_TERMINATED = 1 ,
  TALK_COMPUTER_TEN = 2 ,
  TALK_COMPUTER_NINE = 3 ,
  TALK_COMPUTER_EIGHT = 4 ,
  TALK_COMPUTER_SEVEN = 5 ,
  TALK_COMPUTER_SIX = 6 ,
  TALK_COMPUTER_FIVE = 7 ,
  TALK_COMPUTER_FOUR = 8 ,
  TALK_COMPUTER_THREE = 9 ,
  TALK_COMPUTER_TWO = 10 ,
  TALK_COMPUTER_ONE = 11 ,
  TALK_COMPUTER_ZERO = 12
}
 

Functions

void FaceBarrageArc (Unit *caster)
 
void AddSC_boss_mimiron ()
 

Variables

Position const ACUSummonPos = { 2744.650f, 2569.460f, 380.0f, 3.141593f }
 

Macro Definition Documentation

◆ GetACU

#define GetACU ( )    instance->GetCreature(DATA_MIMIRON_ACU)

◆ GetLMK2

#define GetLMK2 ( )    instance->GetCreature(DATA_MIMIRON_LEVIATHAN_MKII)

◆ GetMimiron

#define GetMimiron ( )    instance->GetCreature(BOSS_MIMIRON)

◆ GetVX001

#define GetVX001 ( )    instance->GetCreature(DATA_MIMIRON_VX001)

Enumeration Type Documentation

◆ Actions

enum Actions
Enumerator
DO_DISABLE_AERIAL 
DO_ENABLE_AERIAL 
DO_DESPAWN_SUMMONS 
230{
234};
@ DO_ENABLE_AERIAL
Definition boss_mimiron.cpp:232
@ DO_DESPAWN_SUMMONS
Definition boss_mimiron.cpp:233
@ DO_DISABLE_AERIAL
Definition boss_mimiron.cpp:231

◆ EVENTS

enum EVENTS
Enumerator
EVENT_SIT_LMK2 
EVENT_SIT_LMK2_INTERVAL 
EVENT_LMK2_RETREAT_INTERVAL 
EVENT_ELEVATOR_INTERVAL_1 
EVENT_ELEVATOR_INTERVAL_2 
EVENT_SITTING_ON_VX001 
EVENT_ENTER_VX001 
EVENT_EMOTE_VX001 
EVENT_VX001_START_FIGHT 
EVENT_ELEVATOR_INTERVAL_0 
EVENT_GET_OUT_VX001 
EVENT_SAY_VX001_DEAD 
EVENT_ENTER_ACU 
EVENT_SAY_ACU_ACTIVATE 
EVENT_ACU_START_ATTACK 
EVENT_VX001_EMOTESTATE_DEATH 
EVENT_SAY_ACU_DEAD 
EVENT_LEVIATHAN_COME_CLOSER 
EVENT_VX001_EMOTE_JUMP 
EVENT_LEVIATHAN_RIDE_MIDDLE 
EVENT_JOIN_TOGETHER 
EVENT_JOIN_ACU 
EVENT_START_PHASE4 
EVENT_FINISH 
EVENT_STAND_UP_FRIENDLY 
EVENT_SAY_VOLTRON_DEAD 
EVENT_DISAPPEAR 
EVENT_BERSERK 
EVENT_BERSERK_2 
EVENT_SPELL_NAPALM_SHELL 
EVENT_SPELL_PLASMA_BLAST 
EVENT_SPELL_SHOCK_BLAST 
EVENT_PROXIMITY_MINES_1 
EVENT_SPELL_HEAT_WAVE 
EVENT_SPELL_ROCKET_STRIKE 
EVENT_REINSTALL_ROCKETS 
EVENT_SPELL_RAPID_BURST 
EVENT_SPELL_RAPID_BURST_INTERVAL 
EVENT_SPELL_SPINNING_UP 
EVENT_HAND_PULSE 
EVENT_SPELL_PLASMA_BALL 
EVENT_SUMMON_BOMB_BOT 
EVENT_BOMB_BOT_CHASE 
EVENT_BOMB_BOT_RELOCATE 
EVENT_SUMMON_ASSAULT_BOT 
EVENT_SUMMON_JUNK_BOT 
EVENT_COMPUTER_SAY_INITIATED 
EVENT_COMPUTER_SAY_MINUTES 
EVENT_MIMIRON_SAY_HARDMODE 
EVENT_SPAWN_FLAMES_INITIAL 
EVENT_FLAMES_SPREAD 
EVENT_FLAME_SUPPRESSION_50000 
EVENT_FLAME_SUPPRESSION_10 
EVENT_FROST_BOMB 
EVENT_SUMMON_EMERGENCY_FIRE_BOTS 
EVENT_EMERGENCY_BOT_CHECK 
EVENT_EMERGENCY_BOT_ATTACK 
EVENT_ROCKET_FIRE 
157{
158 // Mimiron:
159 EVENT_SIT_LMK2 = 1,
171 EVENT_ENTER_ACU = 23,
180 EVENT_JOIN_ACU = 35,
182 EVENT_FINISH = 50,
185 EVENT_DISAPPEAR = 53,
186 EVENT_BERSERK = 54,
187 EVENT_BERSERK_2 = 55,
188
189 // Leviathan:
194
195 // VX001:
202 EVENT_HAND_PULSE = 37,
203
204 // ACU:
211
212 // Hard mode:
220 EVENT_FROST_BOMB = 67,
224
225 // Rocket (Mimiron Visual):
227};
@ EVENT_SUMMON_JUNK_BOT
Definition boss_mimiron.cpp:210
@ EVENT_ELEVATOR_INTERVAL_2
Definition boss_mimiron.cpp:163
@ EVENT_ELEVATOR_INTERVAL_1
Definition boss_mimiron.cpp:162
@ EVENT_ENTER_VX001
Definition boss_mimiron.cpp:165
@ EVENT_SPELL_RAPID_BURST_INTERVAL
Definition boss_mimiron.cpp:200
@ EVENT_FLAME_SUPPRESSION_50000
Definition boss_mimiron.cpp:218
@ EVENT_SPAWN_FLAMES_INITIAL
Definition boss_mimiron.cpp:216
@ EVENT_VX001_EMOTE_JUMP
Definition boss_mimiron.cpp:177
@ EVENT_SIT_LMK2_INTERVAL
Definition boss_mimiron.cpp:160
@ EVENT_SPELL_PLASMA_BLAST
Definition boss_mimiron.cpp:191
@ EVENT_SAY_VX001_DEAD
Definition boss_mimiron.cpp:170
@ EVENT_COMPUTER_SAY_INITIATED
Definition boss_mimiron.cpp:213
@ EVENT_SIT_LMK2
Definition boss_mimiron.cpp:159
@ EVENT_SPELL_NAPALM_SHELL
Definition boss_mimiron.cpp:190
@ EVENT_SITTING_ON_VX001
Definition boss_mimiron.cpp:164
@ EVENT_SAY_ACU_ACTIVATE
Definition boss_mimiron.cpp:172
@ EVENT_SAY_VOLTRON_DEAD
Definition boss_mimiron.cpp:184
@ EVENT_BOMB_BOT_CHASE
Definition boss_mimiron.cpp:207
@ EVENT_FROST_BOMB
Definition boss_mimiron.cpp:220
@ EVENT_ROCKET_FIRE
Definition boss_mimiron.cpp:226
@ EVENT_EMERGENCY_BOT_CHECK
Definition boss_mimiron.cpp:222
@ EVENT_JOIN_ACU
Definition boss_mimiron.cpp:180
@ EVENT_FLAMES_SPREAD
Definition boss_mimiron.cpp:217
@ EVENT_MIMIRON_SAY_HARDMODE
Definition boss_mimiron.cpp:215
@ EVENT_FINISH
Definition boss_mimiron.cpp:182
@ EVENT_BOMB_BOT_RELOCATE
Definition boss_mimiron.cpp:208
@ EVENT_PROXIMITY_MINES_1
Definition boss_mimiron.cpp:193
@ EVENT_EMOTE_VX001
Definition boss_mimiron.cpp:166
@ EVENT_SUMMON_ASSAULT_BOT
Definition boss_mimiron.cpp:209
@ EVENT_ACU_START_ATTACK
Definition boss_mimiron.cpp:173
@ EVENT_SAY_ACU_DEAD
Definition boss_mimiron.cpp:175
@ EVENT_GET_OUT_VX001
Definition boss_mimiron.cpp:169
@ EVENT_LMK2_RETREAT_INTERVAL
Definition boss_mimiron.cpp:161
@ EVENT_SPELL_SPINNING_UP
Definition boss_mimiron.cpp:201
@ EVENT_BERSERK
Definition boss_mimiron.cpp:186
@ EVENT_VX001_EMOTESTATE_DEATH
Definition boss_mimiron.cpp:174
@ EVENT_COMPUTER_SAY_MINUTES
Definition boss_mimiron.cpp:214
@ EVENT_FLAME_SUPPRESSION_10
Definition boss_mimiron.cpp:219
@ EVENT_STAND_UP_FRIENDLY
Definition boss_mimiron.cpp:183
@ EVENT_EMERGENCY_BOT_ATTACK
Definition boss_mimiron.cpp:223
@ EVENT_VX001_START_FIGHT
Definition boss_mimiron.cpp:167
@ EVENT_SUMMON_BOMB_BOT
Definition boss_mimiron.cpp:206
@ EVENT_SUMMON_EMERGENCY_FIRE_BOTS
Definition boss_mimiron.cpp:221
@ EVENT_SPELL_SHOCK_BLAST
Definition boss_mimiron.cpp:192
@ EVENT_LEVIATHAN_COME_CLOSER
Definition boss_mimiron.cpp:176
@ EVENT_SPELL_HEAT_WAVE
Definition boss_mimiron.cpp:196
@ EVENT_DISAPPEAR
Definition boss_mimiron.cpp:185
@ EVENT_SPELL_PLASMA_BALL
Definition boss_mimiron.cpp:205
@ EVENT_ELEVATOR_INTERVAL_0
Definition boss_mimiron.cpp:168
@ EVENT_HAND_PULSE
Definition boss_mimiron.cpp:202
@ EVENT_ENTER_ACU
Definition boss_mimiron.cpp:171
@ EVENT_SPELL_RAPID_BURST
Definition boss_mimiron.cpp:199
@ EVENT_START_PHASE4
Definition boss_mimiron.cpp:181
@ EVENT_JOIN_TOGETHER
Definition boss_mimiron.cpp:179
@ EVENT_SPELL_ROCKET_STRIKE
Definition boss_mimiron.cpp:197
@ EVENT_BERSERK_2
Definition boss_mimiron.cpp:187
@ EVENT_LEVIATHAN_RIDE_MIDDLE
Definition boss_mimiron.cpp:178
@ EVENT_REINSTALL_ROCKETS
Definition boss_mimiron.cpp:198

◆ GOs

enum GOs
Enumerator
GO_DOOR_1 
GO_DOOR_2 
GO_DOOR_3 
GO_BUTTON 
116{
117 //GO_MIMIRON_ELEVATOR = 194749,
118 GO_DOOR_1 = 194776,
119 GO_DOOR_2 = 194774,
120 GO_DOOR_3 = 194775,
121 GO_BUTTON = 194739,
122 // pads: 194740-48
123};
@ GO_BUTTON
Definition boss_mimiron.cpp:121
@ GO_DOOR_1
Definition boss_mimiron.cpp:118
@ GO_DOOR_2
Definition boss_mimiron.cpp:119
@ GO_DOOR_3
Definition boss_mimiron.cpp:120

◆ HardMode

enum HardMode
Enumerator
SPELL_EMERGENCY_MODE 
SPELL_SELF_DESTRUCT 
SPELL_SUMMON_FLAMES_INITIAL 
NPC_FLAMES_INITIAL 
SPELL_SUMMON_FLAMES_SPREAD 
NPC_FLAMES_SPREAD 
SPELL_FLAMES_AURA 
SPELL_VX001_FROST_BOMB 
SPELL_FROST_BOMB_VISUAL_AURA 
SPELL_SUMMON_FROST_BOMB 
NPC_FROST_BOMB 
SPELL_FROST_BOMB_EXPLOSION_10 
SPELL_FROST_BOMB_EXPLOSION_25 
SPELL_FLAME_SUPPRESSANT_10yd 
SPELL_FLAME_SUPPRESSANT_50000yd 
SPELL_WATER_SPRAY 
SPELL_DEAFENING_SIREN 
NPC_EMERGENCY_FIRE_BOT 
SPELL_ENTER_VEHICLE_0 
SPELL_ENTER_VEHICLE_1 
SPELL_ENTER_VEHICLE_2 
SPELL_ENTER_VEHICLE_4 
126{
127 SPELL_EMERGENCY_MODE = 64582,
128 SPELL_SELF_DESTRUCT = 64610,
129
131 NPC_FLAMES_INITIAL = 34363,
133 NPC_FLAMES_SPREAD = 34121,
134 SPELL_FLAMES_AURA = 64561,
135
139 NPC_FROST_BOMB = 34149,
142
145
146 SPELL_WATER_SPRAY = 64619,
147 SPELL_DEAFENING_SIREN = 64616,
149
150 SPELL_ENTER_VEHICLE_0 = 63112,
151 SPELL_ENTER_VEHICLE_1 = 63313,
152 SPELL_ENTER_VEHICLE_2 = 63314,
153 SPELL_ENTER_VEHICLE_4 = 63316,
154};
@ NPC_FROST_BOMB
Definition boss_mimiron.cpp:139
@ NPC_EMERGENCY_FIRE_BOT
Definition boss_mimiron.cpp:148
@ SPELL_FROST_BOMB_EXPLOSION_25
Definition boss_mimiron.cpp:141
@ SPELL_ENTER_VEHICLE_1
Definition boss_mimiron.cpp:151
@ SPELL_SUMMON_FLAMES_SPREAD
Definition boss_mimiron.cpp:132
@ NPC_FLAMES_INITIAL
Definition boss_mimiron.cpp:131
@ SPELL_ENTER_VEHICLE_2
Definition boss_mimiron.cpp:152
@ SPELL_FROST_BOMB_VISUAL_AURA
Definition boss_mimiron.cpp:137
@ SPELL_EMERGENCY_MODE
Definition boss_mimiron.cpp:127
@ SPELL_FLAMES_AURA
Definition boss_mimiron.cpp:134
@ SPELL_FLAME_SUPPRESSANT_10yd
Definition boss_mimiron.cpp:143
@ NPC_FLAMES_SPREAD
Definition boss_mimiron.cpp:133
@ SPELL_ENTER_VEHICLE_0
Definition boss_mimiron.cpp:150
@ SPELL_SUMMON_FLAMES_INITIAL
Definition boss_mimiron.cpp:130
@ SPELL_FLAME_SUPPRESSANT_50000yd
Definition boss_mimiron.cpp:144
@ SPELL_WATER_SPRAY
Definition boss_mimiron.cpp:146
@ SPELL_VX001_FROST_BOMB
Definition boss_mimiron.cpp:136
@ SPELL_FROST_BOMB_EXPLOSION_10
Definition boss_mimiron.cpp:140
@ SPELL_ENTER_VEHICLE_4
Definition boss_mimiron.cpp:153
@ SPELL_SUMMON_FROST_BOMB
Definition boss_mimiron.cpp:138
@ SPELL_DEAFENING_SIREN
Definition boss_mimiron.cpp:147
@ SPELL_SELF_DESTRUCT
Definition boss_mimiron.cpp:128

◆ NPCs

enum NPCs
Enumerator
NPC_LEVIATHAN_MKII 
NPC_LEVIATHAN_MKII_CANNON 
NPC_VX001 
NPC_AERIAL_COMMAND_UNIT 
NPC_COMPUTER 
NPC_BOMB_BOT 
NPC_BOT_SUMMON_TRIGGER 
NPC_ASSAULT_BOT 
NPC_JUNK_BOT 
NPC_MAGNETIC_CORE 
NPC_WORLD_TRIGGER 
100{
101 //NPC_MIMIRON = 33350,
102 NPC_LEVIATHAN_MKII = 33432,
104 NPC_VX001 = 33651,
106 NPC_COMPUTER = 34143,
107 NPC_BOMB_BOT = 33836,
109 NPC_ASSAULT_BOT = 34057,
110 NPC_JUNK_BOT = 33855,
111 NPC_MAGNETIC_CORE = 34068,
112 NPC_WORLD_TRIGGER = 21252,
113};
@ NPC_COMPUTER
Definition boss_mimiron.cpp:106
@ NPC_LEVIATHAN_MKII
Definition boss_mimiron.cpp:102
@ NPC_BOMB_BOT
Definition boss_mimiron.cpp:107
@ NPC_ASSAULT_BOT
Definition boss_mimiron.cpp:109
@ NPC_WORLD_TRIGGER
Definition boss_mimiron.cpp:112
@ NPC_MAGNETIC_CORE
Definition boss_mimiron.cpp:111
@ NPC_VX001
Definition boss_mimiron.cpp:104
@ NPC_AERIAL_COMMAND_UNIT
Definition boss_mimiron.cpp:105
@ NPC_JUNK_BOT
Definition boss_mimiron.cpp:110
@ NPC_BOT_SUMMON_TRIGGER
Definition boss_mimiron.cpp:108
@ NPC_LEVIATHAN_MKII_CANNON
Definition boss_mimiron.cpp:103

◆ SpellData

enum SpellData
Enumerator
SPELL_BERSERK 
SPELL_NAPALM_SHELL 
SPELL_PLASMA_BLAST 
SPELL_SHOCK_BLAST 
SPELL_PROXIMITY_MINES 
NPC_PROXIMITY_MINE 
SPELL_MINE_EXPLOSION 
SPELL_SUMMON_PROXIMITY_MINE 
SPELL_ELEVATOR_KNOCKBACK 
SPELL_HEAT_WAVE 
SPELL_ROCKET_STRIKE_AURA 
SPELL_ROCKET_STRIKE_SINGLE 
SPELL_ROCKET_STRIKE_BOTH 
SPELL_ROCKET_STRIKE_TARGET 
SPELL_SUMMON_ROCKET_STRIKE 
SPELL_ROCKET_STRIKE_DAMAGE 
NPC_ROCKET_VISUAL 
NPC_ROCKET_STRIKE_N 
SPELL_RAPID_BURST 
SPELL_RAPID_BURST_DAMAGE_1 
SPELL_RAPID_BURST_DAMAGE_2 
SPELL_SUMMON_BURST_TARGET 
SPELL_SPINNING_UP 
SPELL_PLASMA_BALL_P1 
SPELL_PLASMA_BALL_P2 
SPELL_MAGNETIC_CORE 
SPELL_MAGNETIC_CORE_VISUAL 
SPELL_MAGNETIC_CORE_SUMMON 
SPELL_SUMMON_BOMB_BOT 
SPELL_BB_EXPLODE 
SPELL_BEAM_GREEN 
SPELL_BEAM_YELLOW 
SPELL_BEAM_BLUE 
SPELL_HAND_PULSE_R 
SPELL_HAND_PULSE_L 
SPELL_SELF_REPAIR 
SPELL_SLEEP_VISUAL_1 
SPELL_SLEEP_VISUAL_2 
38{
39 SPELL_BERSERK = 64238,
40
41 // PHASE 1:
42 SPELL_NAPALM_SHELL = 63666,
43
44 SPELL_PLASMA_BLAST = 62997,
45
46 SPELL_SHOCK_BLAST = 63631,
47
49 NPC_PROXIMITY_MINE = 34362,
52
53 // PHASE 1 -> 2 TRANSITION:
54 SPELL_ELEVATOR_KNOCKBACK = 65096, // Self-cast by the world trigger; sweeps players off the elevator as it rises
55
56 // PHASE 2:
57 SPELL_HEAT_WAVE = 64533,
58
60 SPELL_ROCKET_STRIKE_SINGLE = 64402, // VX-001 fires one of the two mounted rockets
61 SPELL_ROCKET_STRIKE_BOTH = 65034, // VX-001 fires both mounted rockets
62 SPELL_ROCKET_STRIKE_TARGET = 63681, // Cast by a fired rocket; picks the impact target (prefers ranged)
63 SPELL_SUMMON_ROCKET_STRIKE = 63036, // Summons the ground strike at the chosen target
65 NPC_ROCKET_VISUAL = 34050,
66 NPC_ROCKET_STRIKE_N = 34047,
67
68 SPELL_RAPID_BURST = 63382,
72
73 SPELL_SPINNING_UP = 63414,
74
75 // PHASE 3:
78
79 SPELL_MAGNETIC_CORE = 64436,
82
84 SPELL_BB_EXPLODE = 63801,
85
86 SPELL_BEAM_GREEN = 63295,
87 SPELL_BEAM_YELLOW = 63292,
88 SPELL_BEAM_BLUE = 63294,
89
90 // PHASE 4:
91 SPELL_HAND_PULSE_R = 64352,
92 SPELL_HAND_PULSE_L = 64348,
93
94 SPELL_SELF_REPAIR = 64383,
97};
@ SPELL_PLASMA_BLAST
Definition boss_mimiron.cpp:44
@ SPELL_SUMMON_ROCKET_STRIKE
Definition boss_mimiron.cpp:63
@ SPELL_PLASMA_BALL_P2
Definition boss_mimiron.cpp:77
@ SPELL_PLASMA_BALL_P1
Definition boss_mimiron.cpp:76
@ SPELL_RAPID_BURST_DAMAGE_2
Definition boss_mimiron.cpp:70
@ SPELL_SHOCK_BLAST
Definition boss_mimiron.cpp:46
@ SPELL_ELEVATOR_KNOCKBACK
Definition boss_mimiron.cpp:54
@ SPELL_BB_EXPLODE
Definition boss_mimiron.cpp:84
@ SPELL_BEAM_GREEN
Definition boss_mimiron.cpp:86
@ SPELL_BEAM_BLUE
Definition boss_mimiron.cpp:88
@ SPELL_RAPID_BURST
Definition boss_mimiron.cpp:68
@ SPELL_SUMMON_BOMB_BOT
Definition boss_mimiron.cpp:83
@ SPELL_ROCKET_STRIKE_SINGLE
Definition boss_mimiron.cpp:60
@ SPELL_SELF_REPAIR
Definition boss_mimiron.cpp:94
@ SPELL_SUMMON_PROXIMITY_MINE
Definition boss_mimiron.cpp:51
@ SPELL_SLEEP_VISUAL_2
Definition boss_mimiron.cpp:96
@ NPC_ROCKET_STRIKE_N
Definition boss_mimiron.cpp:66
@ SPELL_NAPALM_SHELL
Definition boss_mimiron.cpp:42
@ SPELL_MAGNETIC_CORE
Definition boss_mimiron.cpp:79
@ SPELL_ROCKET_STRIKE_AURA
Definition boss_mimiron.cpp:59
@ SPELL_ROCKET_STRIKE_DAMAGE
Definition boss_mimiron.cpp:64
@ SPELL_ROCKET_STRIKE_TARGET
Definition boss_mimiron.cpp:62
@ SPELL_MAGNETIC_CORE_VISUAL
Definition boss_mimiron.cpp:80
@ NPC_PROXIMITY_MINE
Definition boss_mimiron.cpp:49
@ SPELL_HAND_PULSE_R
Definition boss_mimiron.cpp:91
@ SPELL_HEAT_WAVE
Definition boss_mimiron.cpp:57
@ SPELL_ROCKET_STRIKE_BOTH
Definition boss_mimiron.cpp:61
@ SPELL_SUMMON_BURST_TARGET
Definition boss_mimiron.cpp:71
@ NPC_ROCKET_VISUAL
Definition boss_mimiron.cpp:65
@ SPELL_MAGNETIC_CORE_SUMMON
Definition boss_mimiron.cpp:81
@ SPELL_BERSERK
Definition boss_mimiron.cpp:39
@ SPELL_SPINNING_UP
Definition boss_mimiron.cpp:73
@ SPELL_HAND_PULSE_L
Definition boss_mimiron.cpp:92
@ SPELL_RAPID_BURST_DAMAGE_1
Definition boss_mimiron.cpp:69
@ SPELL_PROXIMITY_MINES
Definition boss_mimiron.cpp:48
@ SPELL_MINE_EXPLOSION
Definition boss_mimiron.cpp:50
@ SPELL_BEAM_YELLOW
Definition boss_mimiron.cpp:87
@ SPELL_SLEEP_VISUAL_1
Definition boss_mimiron.cpp:95

◆ Texts

enum Texts
Enumerator
SAY_AGGRO 
SAY_HARDMODE_ON 
SAY_MKII_ACTIVATE 
SAY_MKII_SLAY 
SAY_MKII_DEATH 
SAY_VX001_ACTIVATE 
SAY_VX001_SLAY 
SAY_VX001_DEATH 
SAY_AERIAL_ACTIVATE 
SAY_AERIAL_SLAY 
SAY_AERIAL_DEATH 
SAY_V07TRON_ACTIVATE 
SAY_V07TRON_SLAY 
SAY_V07TRON_DEATH 
SAY_BERSERK 
EMOTE_PLASMA_BLAST 
TALK_COMPUTER_INITIATED 
TALK_COMPUTER_TERMINATED 
TALK_COMPUTER_TEN 
TALK_COMPUTER_NINE 
TALK_COMPUTER_EIGHT 
TALK_COMPUTER_SEVEN 
TALK_COMPUTER_SIX 
TALK_COMPUTER_FIVE 
TALK_COMPUTER_FOUR 
TALK_COMPUTER_THREE 
TALK_COMPUTER_TWO 
TALK_COMPUTER_ONE 
TALK_COMPUTER_ZERO 
237{
238 // Mimiron
239 SAY_AGGRO = 0, // Unused
240 SAY_HARDMODE_ON = 1,
242 SAY_MKII_SLAY = 3,
243 SAY_MKII_DEATH = 4,
245 SAY_VX001_SLAY = 6,
246 SAY_VX001_DEATH = 7,
248 SAY_AERIAL_SLAY = 9,
249 SAY_AERIAL_DEATH = 10,
251 SAY_V07TRON_SLAY = 12,
253 SAY_BERSERK = 14,
254
255 // MK II
257
258 // Computer (Hardmode countdown)
272};
@ TALK_COMPUTER_THREE
Definition boss_mimiron.cpp:268
@ TALK_COMPUTER_TWO
Definition boss_mimiron.cpp:269
@ TALK_COMPUTER_FOUR
Definition boss_mimiron.cpp:267
@ TALK_COMPUTER_SEVEN
Definition boss_mimiron.cpp:264
@ TALK_COMPUTER_ZERO
Definition boss_mimiron.cpp:271
@ SAY_AERIAL_SLAY
Definition boss_mimiron.cpp:248
@ SAY_AERIAL_ACTIVATE
Definition boss_mimiron.cpp:247
@ SAY_MKII_SLAY
Definition boss_mimiron.cpp:242
@ SAY_AGGRO
Definition boss_mimiron.cpp:239
@ SAY_VX001_ACTIVATE
Definition boss_mimiron.cpp:244
@ SAY_V07TRON_ACTIVATE
Definition boss_mimiron.cpp:250
@ TALK_COMPUTER_NINE
Definition boss_mimiron.cpp:262
@ TALK_COMPUTER_SIX
Definition boss_mimiron.cpp:265
@ TALK_COMPUTER_EIGHT
Definition boss_mimiron.cpp:263
@ TALK_COMPUTER_FIVE
Definition boss_mimiron.cpp:266
@ SAY_AERIAL_DEATH
Definition boss_mimiron.cpp:249
@ TALK_COMPUTER_TEN
Definition boss_mimiron.cpp:261
@ TALK_COMPUTER_INITIATED
Definition boss_mimiron.cpp:259
@ SAY_VX001_DEATH
Definition boss_mimiron.cpp:246
@ SAY_V07TRON_SLAY
Definition boss_mimiron.cpp:251
@ SAY_MKII_DEATH
Definition boss_mimiron.cpp:243
@ SAY_VX001_SLAY
Definition boss_mimiron.cpp:245
@ SAY_HARDMODE_ON
Definition boss_mimiron.cpp:240
@ SAY_V07TRON_DEATH
Definition boss_mimiron.cpp:252
@ TALK_COMPUTER_ONE
Definition boss_mimiron.cpp:270
@ TALK_COMPUTER_TERMINATED
Definition boss_mimiron.cpp:260
@ SAY_BERSERK
Definition boss_mimiron.cpp:253
@ EMOTE_PLASMA_BLAST
Definition boss_mimiron.cpp:256
@ SAY_MKII_ACTIVATE
Definition boss_mimiron.cpp:241

Function Documentation

◆ AddSC_boss_mimiron()

void AddSC_boss_mimiron ( )
2499{
2504
2522
2527}
#define RegisterSpellScript(spell_script)
Definition SpellScriptLoader.h:88
Definition boss_mimiron.cpp:2455
Definition boss_mimiron.cpp:2466
Definition boss_mimiron.cpp:2477
Definition boss_mimiron.cpp:2488
Definition boss_mimiron.cpp:2184
Definition boss_mimiron.cpp:2083
Definition boss_mimiron.cpp:2067
Definition boss_mimiron.cpp:2154
Definition boss_mimiron.cpp:2124
Definition boss_mimiron.cpp:2439
Definition boss_mimiron.cpp:1885
Definition boss_mimiron.cpp:1853
Definition boss_mimiron.cpp:1984
Definition boss_mimiron.cpp:1834
Definition boss_mimiron.cpp:283
Definition boss_mimiron.cpp:1519
Definition boss_mimiron.cpp:2009
Definition boss_mimiron.cpp:2349
Definition boss_mimiron.cpp:2210
Definition boss_mimiron.cpp:2318
Definition boss_mimiron.cpp:946
Definition boss_mimiron.cpp:1926
Definition boss_mimiron.cpp:1785
Definition boss_mimiron.cpp:2396
Definition boss_mimiron.cpp:1248
#define RegisterUlduarCreatureAI(ai_name)
Definition ulduar.h:407

References RegisterSpellScript, and RegisterUlduarCreatureAI.

Referenced by AddNorthrendScripts().

◆ FaceBarrageArc()

void FaceBarrageArc ( Unit caster)
inline
1229{
1230 InstanceScript* instance = caster->GetInstanceScript();
1231 if (!instance)
1232 return;
1233
1234 Creature* dbTarget = instance->GetCreature(DATA_MIMIRON_DB_TARGET);
1235 if (!dbTarget)
1236 return;
1237
1238 float arc = caster->GetAngle(dbTarget);
1239
1240 // SetFacingTo drops the transport transform for passengers, so phase 4 needs a seat-local angle
1241 if (Unit* vehicle = caster->GetVehicleBase())
1242 arc = Position::NormalizeOrientation(arc - vehicle->GetOrientation());
1243
1244 caster->SetFacingTo(arc);
1245}
Definition Creature.h:47
Definition InstanceScript.h:143
Creature * GetCreature(uint32 type)
Definition InstanceScript.cpp:120
Definition Unit.h:665
void SetFacingTo(float ori)
Definition Unit.cpp:16455
Unit * GetVehicleBase() const
Definition Unit.cpp:15016
InstanceScript * GetInstanceScript() const
Definition Object.cpp:1242
float GetAngle(Position const *pos) const
Definition Position.cpp:85
static float NormalizeOrientation(float o)
Definition Position.h:238
@ DATA_MIMIRON_DB_TARGET
Definition ulduar.h:73

References DATA_MIMIRON_DB_TARGET, Position::GetAngle(), InstanceScript::GetCreature(), WorldObject::GetInstanceScript(), Unit::GetVehicleBase(), Position::NormalizeOrientation(), and Unit::SetFacingTo().

Referenced by spell_mimiron_p3wx2_laser_barrage_aura::HandleEffectApply(), spell_mimiron_p3wx2_laser_barrage_aura::HandleEffectPeriodic(), and npc_ulduar_vx001::UpdateAI().

Variable Documentation

◆ ACUSummonPos

Position const ACUSummonPos = { 2744.650f, 2569.460f, 380.0f, 3.141593f }
280{ 2744.650f, 2569.460f, 380.0f, 3.141593f };

Referenced by boss_mimiron::UpdateAI().