From 19a627b23ee2fb00d48fdf24fbdcefeae775455e Mon Sep 17 00:00:00 2001 From: Aqua Deus <95978183+aquadeus@users.noreply.github.com> Date: Sun, 3 Jul 2022 18:01:29 +0200 Subject: Scripts/Spells: Fix damage on primart target of mage talent Supernova (#28061) --- src/server/scripts/Spells/spell_mage.cpp | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'src') diff --git a/src/server/scripts/Spells/spell_mage.cpp b/src/server/scripts/Spells/spell_mage.cpp index ff13accd597..ecd0f5a086f 100644 --- a/src/server/scripts/Spells/spell_mage.cpp +++ b/src/server/scripts/Spells/spell_mage.cpp @@ -1221,6 +1221,27 @@ class spell_mage_ring_of_frost_freeze_AuraScript : public AuraScript } }; +// 157980 - Supernova +class spell_mage_supernova : public SpellScript +{ + PrepareSpellScript(spell_mage_supernova); + + void HandleDamage(SpellEffIndex /*effIndex*/) + { + if (GetExplTargetUnit() == GetHitUnit()) + { + uint32 damage = GetHitDamage(); + AddPct(damage, GetEffectInfo(EFFECT_0).CalcValue()); + SetHitDamage(damage); + } + } + + void Register() override + { + OnEffectHitTarget += SpellEffectFn(spell_mage_supernova::HandleDamage, EFFECT_1, SPELL_EFFECT_SCHOOL_DAMAGE); + } +}; + // 80353 - Time Warp class spell_mage_time_warp : public SpellScript { @@ -1361,6 +1382,7 @@ void AddSC_mage_spell_scripts() RegisterSpellScript(spell_mage_prismatic_barrier); RegisterSpellScript(spell_mage_ring_of_frost); RegisterSpellAndAuraScriptPair(spell_mage_ring_of_frost_freeze, spell_mage_ring_of_frost_freeze_AuraScript); + RegisterSpellScript(spell_mage_supernova); RegisterSpellScript(spell_mage_time_warp); RegisterSpellScript(spell_mage_touch_of_the_magi_aura); RegisterSpellScript(spell_mage_water_elemental_freeze); -- cgit v1.2.3