mirror of
https://github.com/mangosfour/server.git
synced 2025-12-12 19:37:03 +00:00
[10189] Fix display of Interrupted message and fix channelled spells interrupting
This commit is contained in:
parent
eadeda8f5d
commit
904ef55b4e
4 changed files with 20 additions and 23 deletions
|
|
@ -4518,10 +4518,10 @@ void Unit::RemoveSpellAuraHolder(SpellAuraHolder *holder, AuraRemoveMode mode)
|
|||
// Statue unsummoned at holder remove
|
||||
SpellEntry const* AurSpellInfo = holder->GetSpellProto();
|
||||
Totem* statue = NULL;
|
||||
if(IsChanneledSpell(AurSpellInfo))
|
||||
if(Unit* caster = holder->GetCaster())
|
||||
if(caster->GetTypeId()==TYPEID_UNIT && ((Creature*)caster)->isTotem() && ((Totem*)caster)->GetTotemType()==TOTEM_STATUE)
|
||||
statue = ((Totem*)caster);
|
||||
Unit* caster = holder->GetCaster();
|
||||
if(IsChanneledSpell(AurSpellInfo) && caster)
|
||||
if(caster->GetTypeId()==TYPEID_UNIT && ((Creature*)caster)->isTotem() && ((Totem*)caster)->GetTotemType()==TOTEM_STATUE)
|
||||
statue = ((Totem*)caster);
|
||||
|
||||
if (m_spellAuraHoldersUpdateIterator != m_spellAuraHolders.end() && m_spellAuraHoldersUpdateIterator->second == holder)
|
||||
++m_spellAuraHoldersUpdateIterator;
|
||||
|
|
@ -4559,6 +4559,9 @@ void Unit::RemoveSpellAuraHolder(SpellAuraHolder *holder, AuraRemoveMode mode)
|
|||
m_deletedHolders.push_back(holder);
|
||||
else
|
||||
delete holder;
|
||||
|
||||
if (IsChanneledSpell(AurSpellInfo) && caster && caster->GetGUID() != GetGUID())
|
||||
caster->InterruptSpell(CURRENT_CHANNELED_SPELL);
|
||||
}
|
||||
|
||||
void Unit::RemoveSingleAuraFromSpellAuraHolder(SpellAuraHolder *holder, SpellEffectIndex index, AuraRemoveMode mode)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue