diff options
author | Aqua Deus <95978183+aquadeus@users.noreply.github.com> | 2025-04-28 16:27:52 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2025-04-28 16:27:52 +0200 |
commit | 98acdc510cda35b75c3ad86c2d1b7c1bce542c9a (patch) | |
tree | a0cd7371984547bb6110255a416ce88e52ed6e26 /src | |
parent | 369d668d852fd139954ee49d9cf6adbd94c573e2 (diff) |
Scripts/Spells: Implement evoker talent Panacea (#30892)
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Spells/spell_evoker.cpp | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_evoker.cpp b/src/server/scripts/Spells/spell_evoker.cpp index 2e53098137b..7eb055917db 100644 --- a/src/server/scripts/Spells/spell_evoker.cpp +++ b/src/server/scripts/Spells/spell_evoker.cpp @@ -67,6 +67,8 @@ enum EvokerSpells SPELL_EVOKER_LIVING_FLAME = 361469, SPELL_EVOKER_LIVING_FLAME_DAMAGE = 361500, SPELL_EVOKER_LIVING_FLAME_HEAL = 361509, + SPELL_EVOKER_PANACEA_HEAL = 387763, + SPELL_EVOKER_PANACEA_TALENT = 387761, SPELL_EVOKER_PERMEATING_CHILL_TALENT = 370897, SPELL_EVOKER_PYRE_DAMAGE = 357212, SPELL_EVOKER_RUBY_EMBERS = 365937, @@ -513,6 +515,33 @@ class spell_evo_living_flame : public SpellScript } }; +// 387761 Panacea (Green) (attached to 355913 - Emerald Blossom (Green) and 360995 - Verdant Embrace (Green)) +class spell_evo_panacea : public SpellScript +{ + bool Validate(SpellInfo const* /*spellInfo*/) override + { + return ValidateSpellInfo({ SPELL_EVOKER_PANACEA_TALENT, SPELL_EVOKER_PANACEA_HEAL }); + } + + bool Load() override + { + return GetCaster()->HasAura(SPELL_EVOKER_PANACEA_TALENT); + } + + void HandlePanacea() const + { + GetCaster()->CastSpell(GetCaster(), SPELL_EVOKER_PANACEA_HEAL, CastSpellExtraArgsInit{ + .TriggerFlags = TRIGGERED_IGNORE_CAST_IN_PROGRESS | TRIGGERED_DONT_REPORT_CAST_ERROR, + .TriggeringSpell = GetSpell() + }); + } + + void Register() override + { + AfterCast += SpellCastFn(spell_evo_panacea::HandlePanacea); + } +}; + // 381773 - Permeating Chill class spell_evo_permeating_chill : public AuraScript { @@ -727,6 +756,7 @@ void AddSC_evoker_spell_scripts() RegisterSpellScript(spell_evo_fire_breath_damage); RegisterSpellScript(spell_evo_glide); RegisterSpellScript(spell_evo_living_flame); + RegisterSpellScript(spell_evo_panacea); RegisterSpellScript(spell_evo_permeating_chill); RegisterSpellScript(spell_evo_pyre); RegisterSpellScript(spell_evo_ruby_embers); |