diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp index 02247fd23..0a20a4033 100644 --- a/src/game/SpellAuras.cpp +++ b/src/game/SpellAuras.cpp @@ -2709,10 +2709,12 @@ void Aura::HandleAuraModShapeshift(bool apply, bool Real) { SpellEntry const* aurSpellInfo = (*iter)->GetSpellProto(); + uint32 aurMechMask = GetAllSpellMechanicMask(aurSpellInfo); + // If spell that caused this aura has Croud Control or Daze effect - if((GetAllSpellMechanicMask(aurSpellInfo) & MECHANIC_NOT_REMOVED_BY_SHAPESHIFT) || - // some Daze spells have these parameters instead of MECHANIC_DAZE - (aurSpellInfo->SpellIconID == 15 && aurSpellInfo->Dispel == 0)) + if((aurMechMask & MECHANIC_NOT_REMOVED_BY_SHAPESHIFT) || + // some Daze spells have these parameters instead of MECHANIC_DAZE (skip snare spells) + aurSpellInfo->SpellIconID == 15 && aurSpellInfo->Dispel == 0 && (aurMechMask & (1 << MECHANIC_SNARE))==0) { ++iter; continue; diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 80aff7de3..5821392c9 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "8351" + #define REVISION_NR "8352" #endif // __REVISION_NR_H__