[10222] Restore proc events at full miss/immune spells to target.

This commit is contained in:
VladimirMangos 2010-07-19 06:49:13 +04:00
parent 1377db20a7
commit 0e2a80477a
2 changed files with 6 additions and 4 deletions

View file

@ -967,8 +967,10 @@ void Spell::DoAllEffectOnTarget(TargetInfo *target)
uint32 procEx = PROC_EX_NONE;
// drop proc flags in case target not affected negative effects in negative spell
// for example caster bonus or animation
if (((procAttacker | procVictim) & NEGATIVE_TRIGGER_MASK) && !(target->effectMask & m_negativeEffectMask))
// for example caster bonus or animation,
// except miss case where will assigned PROC_EX_* flags later
if (((procAttacker | procVictim) & NEGATIVE_TRIGGER_MASK) &&
!(target->effectMask & m_negativeEffectMask) && missInfo == SPELL_MISS_NONE)
{
procAttacker = PROC_FLAG_NONE;
procVictim = PROC_FLAG_NONE;
@ -3602,7 +3604,7 @@ void Spell::WriteSpellGoTargets( WorldPacket * data )
uint32 miss = 0;
for(std::list<TargetInfo>::iterator ihit = m_UniqueTargetInfo.begin(); ihit != m_UniqueTargetInfo.end(); ++ihit)
{
if ((*ihit).effectMask == 0) // No effect apply - all immuned add state
if ((*ihit).effectMask == 0) // No effect apply - all immuned add state
{
// possibly SPELL_MISS_IMMUNE2 for this??
ihit->missCondition = SPELL_MISS_IMMUNE2;

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "10221"
#define REVISION_NR "10222"
#endif // __REVISION_NR_H__