From 2e69b64d6711efa5c6c92f02d7b05aae72f08002 Mon Sep 17 00:00:00 2001 From: Keader Date: Sat, 3 Apr 2021 10:20:16 -0300 Subject: Revert "Core/Spells: Spells with Attribute SPELL_ATTR1_DISPEL_AURAS_ON_IMMUNITY should dispel snare auras. (#20621)" This reverts commit b507acf1c04ff6e9d0a075f9663e9549d5b238b4. (cherry picked from commit c6e2b6e88c43b3ef79e4eab25b99b1799af161c3) --- src/server/game/Spells/SpellInfo.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp index c6d2447f12b..8f799d9422a 100644 --- a/src/server/game/Spells/SpellInfo.cpp +++ b/src/server/game/Spells/SpellInfo.cpp @@ -3551,7 +3551,13 @@ void SpellInfo::ApplyAllSpellImmunitiesTo(Unit* target, SpellEffectInfo const& s target->ApplySpellImmune(Id, IMMUNITY_MECHANIC, i, apply); if (apply && HasAttribute(SPELL_ATTR1_DISPEL_AURAS_ON_IMMUNITY)) - target->RemoveAurasWithMechanic(mechanicImmunity, AURA_REMOVE_BY_DEFAULT, Id); + { + // exception for purely snare mechanic (eg. hands of freedom)! + if (mechanicImmunity == (1 << MECHANIC_SNARE)) + target->RemoveMovementImpairingAuras(false); + else + target->RemoveAurasWithMechanic(mechanicImmunity, AURA_REMOVE_BY_DEFAULT, Id); + } } if (uint32 dispelImmunity = immuneInfo.DispelImmune) -- cgit v1.2.3