From b01e202244e69d09bfb6523d83e19db5574660e3 Mon Sep 17 00:00:00 2001 From: blinkysc <37940565+blinkysc@users.noreply.github.com> Date: Fri, 20 Feb 2026 18:48:23 -0600 Subject: [PATCH] fix(Core/Spells): Fix Avenging Wrath not greying out Divine Protection/Shield (#24778) Co-authored-by: blinkysc --- src/server/game/Spells/Spell.cpp | 4 ++++ src/server/scripts/Spells/spell_paladin.cpp | 7 ++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index 856eafe78..e8fe0a346 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -3201,6 +3201,10 @@ void Spell::DoTriggersOnSpellHit(Unit* unit, uint8 effMask) /// @todo: move this code to scripts if (m_preCastSpell) { + // Avenging Wrath - also apply Immune Shield Marker + if (m_preCastSpell == 61987) + m_caster->CastSpell(unit, 61988, true); + // Fearie Fire (Feral) - damage if (m_preCastSpell == 60089) m_caster->CastSpell(unit, m_preCastSpell, true); diff --git a/src/server/scripts/Spells/spell_paladin.cpp b/src/server/scripts/Spells/spell_paladin.cpp index d9c228867..a57be2921 100644 --- a/src/server/scripts/Spells/spell_paladin.cpp +++ b/src/server/scripts/Spells/spell_paladin.cpp @@ -556,18 +556,15 @@ class spell_pal_avenging_wrath : public AuraScript }); } - void HandleApply(AuraEffect const* aurEff, AuraEffectHandleModes /*mode*/) + void HandleApply(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/) { Unit* target = GetTarget(); + if (AuraEffect const* sanctifiedWrathAurEff = target->GetAuraEffectOfRankedSpell(SPELL_PALADIN_SANCTIFIED_WRATH_TALENT_R1, EFFECT_2)) { int32 basepoints = sanctifiedWrathAurEff->GetAmount(); target->CastCustomSpell(target, SPELL_PALADIN_SANCTIFIED_WRATH, &basepoints, &basepoints, nullptr, true, nullptr, sanctifiedWrathAurEff); } - - target->CastSpell(target, SPELL_PALADIN_AVENGING_WRATH_MARKER, true, nullptr, aurEff); - // Blizz seems to just apply aura without bothering to cast - target->AddAura(SPELL_PALADIN_IMMUNE_SHIELD_MARKER, target); } void HandleRemove(AuraEffect const* /*aurEff*/, AuraEffectHandleModes /*mode*/)