aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rwxr-xr-xsrc/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp
index a7328b43826..a7f584b8206 100755
--- a/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp
+++ b/src/server/scripts/Northrend/CrusadersColiseum/TrialOfTheCrusader/boss_lord_jaraxxus.cpp
@@ -515,6 +515,36 @@ public:
};
+class spell_spinning_pain_spike : public SpellScriptLoader
+{
+ public:
+ spell_spinning_pain_spike() : SpellScriptLoader("spell_spinning_pain_spike") {}
+
+ class spell_spinning_pain_spike_SpellScript : public SpellScript
+ {
+ PrepareSpellScript(spell_spinning_pain_spike_SpellScript);
+
+ void HandleBeforeHit()
+ {
+ Unit* target = GetHitUnit();
+ if (!target)
+ return;
+
+ if (target->isAlive())
+ SetHitDamage(target->GetMaxHealth()*0.5f);
+ }
+ void Register()
+ {
+ BeforeHit += SpellHitFn(spell_spinning_pain_spike_SpellScript::HandleBeforeHit);
+ }
+ };
+
+ SpellScript* GetSpellScript() const
+ {
+ return new spell_spinning_pain_spike_SpellScript();
+ }
+};
+
void AddSC_boss_jaraxxus()
{
new boss_jaraxxus();
@@ -523,4 +553,5 @@ void AddSC_boss_jaraxxus()
new mob_fel_infernal();
new mob_nether_portal();
new mob_mistress_of_pain();
+ new spell_spinning_pain_spike();
}