diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Spells/Spell.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index f40607c391c..3145f12d0b2 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -4338,9 +4338,10 @@ void Spell::SendChannelStart(uint32 duration) { m_caster->SetChannelObjectGuid(channelTarget); - if (Creature* creatureCaster = m_caster->ToCreature()) - if (!creatureCaster->IsFocusing(this)) - creatureCaster->FocusTarget(this, ObjectAccessor::GetWorldObject(*creatureCaster, channelTarget)); + if (channelTarget != m_caster->GetGUID()) + if (Creature* creatureCaster = m_caster->ToCreature()) + if (!creatureCaster->IsFocusing(this)) + creatureCaster->FocusTarget(this, ObjectAccessor::GetWorldObject(*creatureCaster, channelTarget)); } m_caster->SetUInt32Value(UNIT_CHANNEL_SPELL, m_spellInfo->Id); |