diff options
author | Keader <keader.android@gmail.com> | 2021-04-03 10:20:16 -0300 |
---|---|---|
committer | Keader <keader.android@gmail.com> | 2021-04-03 10:20:16 -0300 |
commit | c6e2b6e88c43b3ef79e4eab25b99b1799af161c3 (patch) | |
tree | f8d52fbbd8bafcc62a01cc730a8d45349ba75eff | |
parent | 0c3bbf5c65c02ad701a831563ba3da9c624de43e (diff) |
Revert "Core/Spells: Spells with Attribute SPELL_ATTR1_DISPEL_AURAS_ON_IMMUNITY should dispel snare auras. (#20621)"
This reverts commit b507acf1c04ff6e9d0a075f9663e9549d5b238b4.
-rw-r--r-- | src/server/game/Spells/SpellInfo.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp index d3acdb93edb..f0d42133088 100644 --- a/src/server/game/Spells/SpellInfo.cpp +++ b/src/server/game/Spells/SpellInfo.cpp @@ -2869,7 +2869,13 @@ void SpellInfo::ApplyAllSpellImmunitiesTo(Unit* target, uint8 effIndex, bool app 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) |