diff --git a/data/sql/updates/pending_db_world/rev_1776309913700597434.sql b/data/sql/updates/pending_db_world/rev_1776309913700597434.sql new file mode 100644 index 000000000..e7e125cde --- /dev/null +++ b/data/sql/updates/pending_db_world/rev_1776309913700597434.sql @@ -0,0 +1,10 @@ +-- +-- Ball of Flames Proc (ICC Prince Valanar): +-- ensure the spell script is registered so the new AuraScript +-- decrements a stack each time the ball hits a player. +DELETE FROM `spell_script_names` WHERE `spell_id` IN (71756, 72782, 72783, 72784) AND `ScriptName`='spell_taldaram_ball_of_inferno_flame'; +INSERT INTO `spell_script_names` (`spell_id`, `ScriptName`) VALUES +(71756, 'spell_taldaram_ball_of_inferno_flame'), +(72782, 'spell_taldaram_ball_of_inferno_flame'), +(72783, 'spell_taldaram_ball_of_inferno_flame'), +(72784, 'spell_taldaram_ball_of_inferno_flame'); diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp index df6775917..a686b46a3 100644 --- a/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp +++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_blood_prince_council.cpp @@ -1543,6 +1543,21 @@ class spell_taldaram_ball_of_inferno_flame : public SpellScript } }; +class spell_taldaram_ball_of_inferno_flame_aura : public AuraScript +{ + PrepareAuraScript(spell_taldaram_ball_of_inferno_flame_aura); + + void HandleStackDrop(ProcEventInfo& /*eventInfo*/) + { + ModStackAmount(-1); + } + + void Register() override + { + OnProc += AuraProcFn(spell_taldaram_ball_of_inferno_flame_aura::HandleStackDrop); + } +}; + class spell_valanar_kinetic_bomb : public SpellScript { PrepareSpellScript(spell_valanar_kinetic_bomb); @@ -1704,7 +1719,7 @@ void AddSC_boss_blood_prince_council() RegisterSpellScript(spell_blood_council_shadow_prison_damage); RegisterSpellScript(spell_taldaram_glittering_sparks); RegisterSpellScript(spell_taldaram_summon_flame_ball); - RegisterSpellScript(spell_taldaram_ball_of_inferno_flame); + RegisterSpellAndAuraScriptPair(spell_taldaram_ball_of_inferno_flame, spell_taldaram_ball_of_inferno_flame_aura); RegisterSpellAndAuraScriptPair(spell_valanar_kinetic_bomb, spell_valanar_kinetic_bomb_aura); RegisterSpellScript(spell_valanar_kinetic_bomb_absorb_aura); RegisterSpellScript(spell_valanar_kinetic_bomb_knockback);