From c1ca852e1682c8a09b9fbb4143663674320ce021 Mon Sep 17 00:00:00 2001 From: xinef1 Date: Sun, 5 Feb 2017 21:05:00 +0100 Subject: Core/Spells: Corrected execution time calculation for dst targets (#19039) --- src/server/game/Spells/Spell.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index 3f220229486..2b3c764bfbd 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -811,7 +811,8 @@ void Spell::SelectSpellTargets() } else if (m_spellInfo->Speed > 0.0f) { - float dist = m_caster->GetDistance(*m_targets.GetDstPos()); + // We should not subtract caster size from dist calculation (fixes execution time desync with animation on client, eg. Malleable Goo cast by PP) + float dist = m_caster->GetExactDist(*m_targets.GetDstPos()); m_delayMoment = (uint64) std::floor(dist / m_spellInfo->Speed * 1000.0f); } } -- cgit v1.2.3