From 32f0f236dc977885f1040bd02fd362f48cb64d1e Mon Sep 17 00:00:00 2001 From: blinkysc <37940565+blinkysc@users.noreply.github.com> Date: Mon, 9 Mar 2026 13:32:16 -0500 Subject: [PATCH] fix(Core/Spells): Fix Divine Purpose not removing Intimidating Shout stun (#25021) Co-authored-by: blinkysc --- src/server/game/Spells/Spell.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index f658367d4..858df76c1 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -6883,9 +6883,9 @@ SpellCastResult Spell::CheckCasterAuras(bool preventionOnly) const // Barkskin should skip sleep effects, sap and fears if (m_spellInfo->Id == 22812) mask |= 1 << MECHANIC_SAPPED | 1 << MECHANIC_HORROR | 1 << MECHANIC_SLEEP; - // Hand of Freedom, can be used while sapped + // Hand of Freedom, can be used while sapped and while under fear-mechanic stuns (e.g. Intimidating Shout primary target) if (m_spellInfo->Id == 1044) - mask |= 1 << MECHANIC_SAPPED; + mask |= (1 << MECHANIC_SAPPED) | (1 << MECHANIC_FEAR); Unit::AuraEffectList const& stunAuras = m_caster->GetAuraEffectsByType(SPELL_AURA_MOD_STUN); for (Unit::AuraEffectList::const_iterator i = stunAuras.begin(); i != stunAuras.end(); ++i) { @@ -6948,9 +6948,9 @@ SpellCastResult Spell::CheckCasterAuras(bool preventionOnly) const // Barkskin should skip sleep effects, sap and fears if (m_spellInfo->Id == 22812) mask |= 1 << MECHANIC_SAPPED | 1 << MECHANIC_HORROR | 1 << MECHANIC_SLEEP; - // Hand of Freedom, can be used while sapped + // Hand of Freedom, can be used while sapped and while under fear-mechanic stuns (e.g. Intimidating Shout primary target) if (m_spellInfo->Id == 1044) - mask |= 1 << MECHANIC_SAPPED; + mask |= (1 << MECHANIC_SAPPED) | (1 << MECHANIC_FEAR); if (!usableInStun || !(auraInfo->GetAllEffectsMechanicMask() & mask)) return SPELL_FAILED_STUNNED;