aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeader <keader.android@gmail.com>2017-12-04 08:55:15 -0300
committerfunjoker <funjoker109@gmail.com>2021-02-25 18:50:55 +0100
commit2630a5288a80bbc03aa3dbc868f709a222c3012c (patch)
treeca1e2c9a5948702fe24d05f11002018a3dfe4bcd
parentc1ad297a726ec9ee98b0b99ab159b90f1a638c98 (diff)
Core/Scripts: Fixed Enervating Brand in Baltharus encounter
Closes #21027 By Mihapro (cherry picked from commit 6598c5d2f3af6f9282686fad844457fd1375785d)
-rw-r--r--src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_baltharus_the_warborn.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_baltharus_the_warborn.cpp b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_baltharus_the_warborn.cpp
index 76dea026e36..aaadeba12ba 100644
--- a/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_baltharus_the_warborn.cpp
+++ b/src/server/scripts/Northrend/ChamberOfAspects/RubySanctum/boss_baltharus_the_warborn.cpp
@@ -334,16 +334,22 @@ class spell_baltharus_enervating_brand_trigger : public SpellScriptLoader
{
PrepareSpellScript(spell_baltharus_enervating_brand_trigger_SpellScript);
- void CheckDistance()
+ bool Validate(SpellInfo const* /*spell*/) override
{
- Unit* caster = GetCaster();
- Unit* target = GetHitUnit();
- target->CastSpell(caster, SPELL_SIPHONED_MIGHT, true);
+ return ValidateSpellInfo({ SPELL_SIPHONED_MIGHT });
+ }
+
+ void HandleSiphonedMight()
+ {
+ if (SpellInfo const* spellInfo = GetTriggeringSpell())
+ if (Aura* triggerAura = GetCaster()->GetAura(spellInfo->Id))
+ if (Unit* caster = triggerAura->GetCaster())
+ GetHitUnit()->CastSpell(caster, SPELL_SIPHONED_MIGHT, true);
}
void Register() override
{
- OnHit += SpellHitFn(spell_baltharus_enervating_brand_trigger_SpellScript::CheckDistance);
+ OnHit += SpellHitFn(spell_baltharus_enervating_brand_trigger_SpellScript::HandleSiphonedMight);
}
};