*Remove AURA_INTERRUPT_FLAG_ATTACK auras only when melee attack but not combat start.

--HG--
branch : trunk
This commit is contained in:
megamage
2008-12-01 16:33:50 -06:00
parent 27adb19eb8
commit b5af2546b5
+3 -2
View File
@@ -512,6 +512,8 @@ void Unit::RemoveAurasWithInterruptFlags(uint32 flag, uint32 except)
&& (spell->m_spellInfo->ChannelInterruptFlags & flag) && (spell->m_spellInfo->ChannelInterruptFlags & flag)
&& spell->m_spellInfo->Id != except) && spell->m_spellInfo->Id != except)
InterruptNonMeleeSpells(false); InterruptNonMeleeSpells(false);
UpdateInterruptMask();
} }
void Unit::UpdateInterruptMask() void Unit::UpdateInterruptMask()
@@ -2779,6 +2781,7 @@ void Unit::AttackerStateUpdate (Unit *pVictim, WeaponAttackType attType, bool ex
return; return;
CombatStart(pVictim); CombatStart(pVictim);
RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_ATTACK);
uint32 hitInfo; uint32 hitInfo;
if (attType == BASE_ATTACK) if (attType == BASE_ATTACK)
@@ -9766,8 +9769,6 @@ void Unit::CombatStart(Unit* target)
if(Player* attackedPlayer = target->GetCharmerOrOwnerPlayerOrPlayerItself()) if(Player* attackedPlayer = target->GetCharmerOrOwnerPlayerOrPlayerItself())
SetContestedPvP(attackedPlayer); SetContestedPvP(attackedPlayer);
RemoveAurasWithInterruptFlags(AURA_INTERRUPT_FLAG_ATTACK);
} }
void Unit::SetInCombatState(bool PvP) void Unit::SetInCombatState(bool PvP)