diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/scripts/Spells/spell_azerite.cpp | 22 | ||||
-rw-r--r-- | src/server/scripts/Spells/spell_item.cpp | 17 |
2 files changed, 39 insertions, 0 deletions
diff --git a/src/server/scripts/Spells/spell_azerite.cpp b/src/server/scripts/Spells/spell_azerite.cpp index add0174d0b5..ffcbe6f1678 100644 --- a/src/server/scripts/Spells/spell_azerite.cpp +++ b/src/server/scripts/Spells/spell_azerite.cpp @@ -513,6 +513,27 @@ class spell_item_hour_of_reaping : public AuraScript } }; +// 304086 - Azerite Fortification +class spell_item_conflict_wearer_on_stun_proc : public AuraScript +{ + PrepareAuraScript(spell_item_conflict_wearer_on_stun_proc); + + bool CheckProc(AuraEffect const* /*aurEff*/, ProcEventInfo& eventInfo) + { + Spell const* procSpell = eventInfo.GetProcSpell(); + if (!procSpell) + return false; + + return procSpell->GetSpellInfo()->HasAura(SPELL_AURA_MOD_STUN) + || procSpell->GetSpellInfo()->HasAura(SPELL_AURA_MOD_STUN_DISABLE_GRAVITY); + } + + void Register() override + { + DoCheckEffectProc += AuraCheckEffectProcFn(spell_item_conflict_wearer_on_stun_proc::CheckProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL); + } +}; + // 277253 - Heart of Azeroth class spell_item_heart_of_azeroth : public AuraScript { @@ -566,6 +587,7 @@ void AddSC_azerite_item_spell_scripts() RegisterSpellScript(spell_item_echoing_blades); RegisterSpellScript(spell_item_echoing_blades_damage); RegisterSpellScript(spell_item_hour_of_reaping); + RegisterSpellScript(spell_item_conflict_wearer_on_stun_proc); RegisterSpellScript(spell_item_heart_of_azeroth); } diff --git a/src/server/scripts/Spells/spell_item.cpp b/src/server/scripts/Spells/spell_item.cpp index 1dca1784067..53c445a3b28 100644 --- a/src/server/scripts/Spells/spell_item.cpp +++ b/src/server/scripts/Spells/spell_item.cpp @@ -4748,6 +4748,22 @@ class spell_item_grips_of_forsaken_sanity : public AuraScript } }; +// 302385 - Resurrect Health +class spell_item_zanjir_scaleguard_greatcloak : public AuraScript +{ + PrepareAuraScript(spell_item_zanjir_scaleguard_greatcloak); + + bool CheckProc(AuraEffect const* /*aurEff*/, ProcEventInfo& eventInfo) + { + return eventInfo.GetSpellInfo() && eventInfo.GetSpellInfo()->HasEffect(SPELL_EFFECT_RESURRECT); + } + + void Register() override + { + DoCheckEffectProc += AuraCheckEffectProcFn(spell_item_zanjir_scaleguard_greatcloak::CheckProc, EFFECT_0, SPELL_AURA_PROC_TRIGGER_SPELL); + } +}; + void AddSC_item_spell_scripts() { // 23074 Arcanite Dragonling @@ -4897,4 +4913,5 @@ void AddSC_item_spell_scripts() RegisterSpellScript(spell_item_seeping_scourgewing); RegisterSpellScript(spell_item_seeping_scourgewing_aoe_check); RegisterSpellScript(spell_item_grips_of_forsaken_sanity); + RegisterSpellScript(spell_item_zanjir_scaleguard_greatcloak); } |