[7849] Fix remove Swiftmend aurastate in some cases

Signed-off-by: DiSlord <dislord@nomail.com>
This commit is contained in:
DiSlord 2009-05-18 23:43:38 +04:00
parent c672d4d99e
commit 695d83568a
2 changed files with 6 additions and 2 deletions

View file

@ -1075,6 +1075,7 @@ void Aura::_RemoveAura()
m_target->ModifyAuraState(AURA_STATE_ENRAGE, false);
uint32 removeState = 0;
uint64 removeFamilyFlag = m_spellProto->SpellFamilyFlags;
switch(m_spellProto->SpellFamilyName)
{
case SPELLFAMILY_PALADIN:
@ -1089,7 +1090,10 @@ void Aura::_RemoveAura()
if(m_spellProto->SpellFamilyFlags & 0x0000000000000400LL)
removeState = AURA_STATE_FAERIE_FIRE; // Faerie Fire (druid versions)
else if(m_spellProto->SpellFamilyFlags & 0x50)
{
removeFamilyFlag = 0x50;
removeState = AURA_STATE_SWIFTMEND; // Swiftmend aura state
}
break;
case SPELLFAMILY_WARRIOR:
if(m_spellProto->SpellFamilyFlags & 0x0004000000000000LL)
@ -1113,7 +1117,7 @@ void Aura::_RemoveAura()
{
SpellEntry const *auraSpellInfo = (*i).second->GetSpellProto();
if(auraSpellInfo->SpellFamilyName == m_spellProto->SpellFamilyName &&
auraSpellInfo->SpellFamilyFlags == m_spellProto->SpellFamilyFlags )
auraSpellInfo->SpellFamilyFlags & removeFamilyFlag)
{
found = true;
break;

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "7848"
#define REVISION_NR "7849"
#endif // __REVISION_NR_H__