aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSupabad <supabad.trinity@gmail.com>2011-04-05 15:14:22 +0200
committerleak <leakzx@googlemail.com>2011-04-06 11:35:38 +0200
commitdc8fd3cbc3740f226862045f2f23c3da8320b3bf (patch)
tree901c38a37a84d49392a92fa880620c5a0fcd2c89 /src
parent368818a810b5c477a13106993567cf1825c7bbb5 (diff)
Ulduar/Mimiron: add spell script for Proximity mines
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/game/Scripting/ScriptLoader.cpp2
-rw-r--r--src/server/scripts/Northrend/Ulduar/ulduar/boss_mimiron.cpp76
-rw-r--r--src/server/scripts/Northrend/Ulduar/ulduar/ulduar.h3
3 files changed, 81 insertions, 0 deletions
diff --git a/src/server/game/Scripting/ScriptLoader.cpp b/src/server/game/Scripting/ScriptLoader.cpp
index 9069bf401fb..3182a09bb8c 100755
--- a/src/server/game/Scripting/ScriptLoader.cpp
+++ b/src/server/game/Scripting/ScriptLoader.cpp
@@ -423,6 +423,7 @@ void AddSC_boss_kologarn();
void AddSC_boss_assembly_of_iron();
void AddSC_boss_general_vezax();
void AddSC_ulduar_teleporter();
+void AddSC_boss_mimiron();
void AddSC_instance_ulduar();
void AddSC_boss_keleseth(); //Utgarde Keep
void AddSC_boss_skarvald_dalronn();
@@ -1116,6 +1117,7 @@ void AddNorthrendScripts()
AddSC_boss_assembly_of_iron();
AddSC_boss_kologarn();
AddSC_ulduar_teleporter();
+ AddSC_boss_mimiron();
AddSC_instance_ulduar();
AddSC_boss_keleseth(); //Utgarde Keep
AddSC_boss_skarvald_dalronn();
diff --git a/src/server/scripts/Northrend/Ulduar/ulduar/boss_mimiron.cpp b/src/server/scripts/Northrend/Ulduar/ulduar/boss_mimiron.cpp
index c899825c40d..46d2ec0a3a3 100644
--- a/src/server/scripts/Northrend/Ulduar/ulduar/boss_mimiron.cpp
+++ b/src/server/scripts/Northrend/Ulduar/ulduar/boss_mimiron.cpp
@@ -41,3 +41,79 @@ enum Yells
SAY_BERSERK = -1603258,
SAY_YS_HELP = -1603259,
};
+
+enum Spells
+{
+ SPELL_JETPACK = 63341,
+ SPELL_EMERGENCY_MODE = 64582,
+ SPELL_SELF_REPAIR = 64383,
+ SPELL_MAGNETIC_CORE = 64444,
+ // Leviathan MK II
+ SPELL_FLAME_SUPPRESSANT_MK = 64570,
+ SPELL_NAPALM_SHELL = 63666,
+ SPELL_PLASMA_BLAST = 62977,
+ SPELL_PROXIMITY_MINES = 63027,
+ SPELL_SHOCK_BLAST = 63631,
+ // VX 001
+ SPELL_FLAME_SUPPRESSANT_VX = 65192,
+ SPELL_FROSTBOMB = 64623,
+ SPELL_HAND_PULSE = 64348,
+ SPELL_SPINNING_UP = 63414,
+ SPELL_RAPID_BURST = 63387,
+ SPELL_P3WX2_LASER_BARRAGE = 63293,
+ SPELL_ROCKET_STRIKE = 63041,
+ SPELL_HEAT_WAVE = 63677,
+ // Aerial Command Unit
+ SPELL_PLASMA_BALL = 63689,
+ // Additonal spells
+ SPELL_MAGNETIC_FIELD = 64668,
+ SPELL_DEAFENING_SIREN = 64616,
+ SPELL_WATER_SPRAY = 64619,
+ SPELL_FROST_BOMB_HARD_MODE = 64627,
+ SPELL_EXPLOSION = 66351,
+ SPELL_DISARM = 1842,
+ SPELL_RIDE_VEHICLE = 46598,
+ SPELL_TRIGGER_MISSILE = 65347,
+};
+
+enum Npc
+{
+ NPC_ASSAULT_BOT = 34057,
+ NPC_BOMB_BOT = 33836,
+ NPC_JUNK_BOT = 33855,
+ NPC_EMERGENCE_FIRE_BOT = 34147,
+ NPC_FROST_BOMB = 34149,
+};
+
+class spell_ulduar_proximity_mines : public SpellScriptLoader
+{
+ public:
+ spell_ulduar_proximity_mines() : SpellScriptLoader("spell_ulduar_proximity_mines") { }
+
+ class spell_ulduar_proximity_minesSpellScript : public SpellScript
+ {
+ PrepareSpellScript(spell_ulduar_proximity_minesSpellScript)
+
+ void HandleScript(SpellEffIndex effIndex)
+ {
+ PreventHitDefaultEffect(effIndex);
+ for (uint8 i = 0; i < 10; ++i)
+ GetCaster()->CastSpell(GetCaster(), SPELL_TRIGGER_MISSILE, true);
+ }
+
+ void Register()
+ {
+ OnEffect += SpellEffectFn(spell_ulduar_proximity_minesSpellScript::HandleScript, EFFECT_0, SPELL_EFFECT_SCRIPT_EFFECT);
+ }
+ };
+
+ SpellScript* GetSpellScript() const
+ {
+ return new spell_ulduar_proximity_minesSpellScript();
+ }
+};
+
+void AddSC_boss_mimiron()
+{
+ new spell_ulduar_proximity_mines();
+}
diff --git a/src/server/scripts/Northrend/Ulduar/ulduar/ulduar.h b/src/server/scripts/Northrend/Ulduar/ulduar/ulduar.h
index 5a405a02fdb..9497136d46b 100644
--- a/src/server/scripts/Northrend/Ulduar/ulduar/ulduar.h
+++ b/src/server/scripts/Northrend/Ulduar/ulduar/ulduar.h
@@ -80,6 +80,9 @@ enum eNPCs
NPC_VEZAX = 33271,
NPC_YOGGSARON = 33288,
NPC_ALGALON = 32871,
+ NPC_LEVIATHAN_MKII = 33432,
+ NPC_VX_001 = 33651,
+ NPC_AERIAL_COMMAND_UNIT = 33670,
};
enum eGameObjects