mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-19 00:48:56 +01:00
*Aura Consolidation + MaxModifier. By Authorius, modified by Deafboy and thenecromancer, adapted by Muhaha.
--HG-- branch : trunk
This commit is contained in:
@@ -362,6 +362,28 @@ void WorldSession::HandleCancelAuraOpcode( WorldPacket& recvPacket)
|
||||
if(!IsPositiveSpell(spellId) || (spellInfo->Attributes & SPELL_ATTR_CANT_CANCEL))
|
||||
return;
|
||||
|
||||
// lifebloom must delete final heal effect
|
||||
if (spellInfo->SpellFamilyName == SPELLFAMILY_DRUID && (spellInfo->SpellFamilyFlags & 0x1000000000LL) )
|
||||
{
|
||||
Unit::AuraMap::iterator iter;
|
||||
while((iter = _player->m_Auras.find(Unit::spellEffectPair(spellId, 1))) != _player->m_Auras.end())
|
||||
{
|
||||
_player->m_modAuras[SPELL_AURA_DUMMY].remove(iter->second);
|
||||
|
||||
Aura* Aur = iter->second;
|
||||
_player->m_Auras.erase(iter);
|
||||
++_player->m_removedAuras; // internal count used by unit update
|
||||
|
||||
delete Aur;
|
||||
|
||||
if( _player->m_Auras.empty() )
|
||||
iter = _player->m_Auras.end();
|
||||
else
|
||||
iter = _player->m_Auras.begin();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// channeled spell case (it currently casted then)
|
||||
if(IsChanneledSpell(spellInfo))
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user