aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeader <keader.android@gmail.com>2017-12-04 08:55:15 -0300
committerKeader <keader.android@gmail.com>2017-12-04 08:55:15 -0300
commit6598c5d2f3af6f9282686fad844457fd1375785d (patch)
tree99c27dab756e0131781573dbb07f81fb1373399d
parent0725f608aa7af9dd9857cb695038bfc9700c1e12 (diff)
Core/Scripts: Fixed Enervating Brand in Baltharus encounter
Closes #21027 By Mihapro
-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 24f35115e04..2f9201ec473 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);
}
};