From f8e8daf9a88cb377a41088517614c2b7fd950eeb Mon Sep 17 00:00:00 2001 From: joschiwald Date: Sat, 26 Aug 2017 12:32:07 +0200 Subject: Core/Spells: Fixed AuraEffect::CheckEffectProc for SPELL_AURA_MECHANIC_IMMUNITY, SPELL_AURA_MOD_MECHANIC_RESISTANCE and SPELL_AURA_MOD_CASTING_SPEED_NOT_STACK --- src/server/game/Spells/Auras/SpellAuraEffects.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/server') diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp index 195e60fd120..0c12b28a5af 100644 --- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp +++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp @@ -1188,12 +1188,12 @@ bool AuraEffect::CheckEffectProc(AuraApplication* aurApp, ProcEventInfo& eventIn case SPELL_AURA_MECHANIC_IMMUNITY: case SPELL_AURA_MOD_MECHANIC_RESISTANCE: // compare mechanic - if (!spellInfo || static_cast(spellInfo->Mechanic) != GetMiscValue()) + if (!spellInfo || !(spellInfo->GetAllEffectsMechanicMask() & (1 << GetMiscValue()))) result = false; break; case SPELL_AURA_MOD_CASTING_SPEED_NOT_STACK: // skip melee hits and instant cast spells - if (!spellInfo || !spellInfo->CalcCastTime()) + if (!eventInfo.GetProcSpell() || !eventInfo.GetProcSpell()->GetCastTime()) result = false; break; case SPELL_AURA_MOD_SPELL_DAMAGE_FROM_CASTER: -- cgit v1.2.3