[10554] Fix wrong procs when spell hits with no damage

This commit is contained in:
Laise 2010-09-28 15:40:32 +02:00
parent b0e89aa5da
commit 6a492ce678
2 changed files with 3 additions and 3 deletions

View file

@ -917,7 +917,7 @@ bool Aura::CanProcFrom(SpellEntry const *spell, uint32 EventProcEx, uint32 procE
// if no class mask defined - allow proc
if (!((uint64*)ptr)[0] && !ptr[2])
{
if (IsPassiveSpell(GetSpellProto()) && !(EventProcEx & PROC_EX_EX_TRIGGER_ALWAYS))
if (!(EventProcEx & PROC_EX_EX_TRIGGER_ALWAYS))
{
// Check for extra req (if none) and hit/crit
if (EventProcEx == PROC_EX_NONE)
@ -931,7 +931,7 @@ bool Aura::CanProcFrom(SpellEntry const *spell, uint32 EventProcEx, uint32 procE
else // Passive spells hits here only if resist/reflect/immune/evade
{
// Passive spells can`t trigger if need hit (exclude cases when procExtra include non-active flags)
if ((EventProcEx & PROC_EX_NORMAL_HIT & procEx) && !active)
if ((EventProcEx & (PROC_EX_NORMAL_HIT|PROC_EX_CRITICAL_HIT) & procEx) && !active)
return false;
}
}