From b827e0f2c3a6eef349318dbbaf53a240bca6768b Mon Sep 17 00:00:00 2001 From: DiSlord Date: Sun, 25 Jan 2009 17:31:17 +0300 Subject: [PATCH] Restore some spells animation Signed-off-by: DiSlord --- src/game/Spell.cpp | 21 ++++++++------------- 1 file changed, 8 insertions(+), 13 deletions(-) diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 62d362287..657d75ac0 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -1566,7 +1566,14 @@ void Spell::SetTargetMap(uint32 i,uint32 cur,std::list &TagUnitMap) }break; case TARGET_CASTER_COORDINATES: { - m_targets.setDestination(m_targets.m_srcX, m_targets.m_srcY, m_targets.m_srcZ); + // Check original caster is GO - set its coordinates as dst cast + WorldObject *caster = NULL; + if (m_originalCasterGUID) + caster = ObjectAccessor::GetGameObject(*m_caster, m_originalCasterGUID); + if (!caster) + caster = m_caster; + // Set dest for targets + m_targets.setDestination(caster->GetPositionX(), caster->GetPositionY(), caster->GetPositionZ()); }break; case TARGET_ALL_FRIENDLY_UNITS_AROUND_CASTER: { @@ -2038,18 +2045,6 @@ void Spell::prepare(SpellCastTargets const* targets, Aura* triggeredByAura) m_spellState = SPELL_STATE_PREPARING; - if (!(m_targets.m_targetMask & TARGET_FLAG_SOURCE_LOCATION)) - { - // Check original caster is GO - set its coordinates as src cast - WorldObject *caster = NULL; - if (m_originalCasterGUID) - caster = ObjectAccessor::GetGameObject(*m_caster, m_originalCasterGUID); - if (!caster) - caster = m_caster; - // Set cast source for targets - m_targets.setSource(caster->GetPositionX(), caster->GetPositionY(), caster->GetPositionZ()); - } - m_castPositionX = m_caster->GetPositionX(); m_castPositionY = m_caster->GetPositionY(); m_castPositionZ = m_caster->GetPositionZ();