diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index c95df1a5bc4..2b79fe19f57 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -871,12 +871,16 @@ void Spell::EffectJumpDest(SpellEffIndex effIndex) void Spell::CalculateJumpSpeeds(uint8 i, float dist, float & speedXY, float & speedZ) { if (m_spellInfo->Effects[i].MiscValue) - speedZ = float(m_spellInfo->Effects[i].MiscValue)/10; + speedZ = float(m_spellInfo->Effects[i].MiscValue) / 10; else if (m_spellInfo->Effects[i].MiscValueB) - speedZ = float(m_spellInfo->Effects[i].MiscValueB)/10; + speedZ = float(m_spellInfo->Effects[i].MiscValueB) / 10; else speedZ = 10.0f; - speedXY = dist * 10.0f / speedZ; + + if (m_spellInfo->Speed != 0.0f) + speedXY = m_spellInfo->Speed; + else + speedXY = dist * 10.0f / speedZ; } void Spell::EffectTeleportUnits(SpellEffIndex /*effIndex*/)