Core/Spells: Fixed crash with m_delayMoment calculation for reflected spells
This commit is contained in:
@@ -1675,10 +1675,6 @@ namespace Game.Spells
|
|||||||
targetInfo.timeDelay = (ulong)Math.Floor((dist / m_spellInfo.Speed) * 1000.0f);
|
targetInfo.timeDelay = (ulong)Math.Floor((dist / m_spellInfo.Speed) * 1000.0f);
|
||||||
else
|
else
|
||||||
targetInfo.timeDelay = (ulong)(m_spellInfo.Speed * 1000.0f);
|
targetInfo.timeDelay = (ulong)(m_spellInfo.Speed * 1000.0f);
|
||||||
|
|
||||||
// Calculate minimum incoming time
|
|
||||||
if (m_delayMoment == 0 || m_delayMoment > targetInfo.timeDelay)
|
|
||||||
m_delayMoment = targetInfo.timeDelay;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
targetInfo.timeDelay = 0L;
|
targetInfo.timeDelay = 0L;
|
||||||
@@ -1698,6 +1694,10 @@ namespace Game.Spells
|
|||||||
else
|
else
|
||||||
targetInfo.reflectResult = SpellMissInfo.None;
|
targetInfo.reflectResult = SpellMissInfo.None;
|
||||||
|
|
||||||
|
// Calculate minimum incoming time
|
||||||
|
if (targetInfo.timeDelay != 0 && (m_delayMoment == 0 || m_delayMoment > targetInfo.timeDelay))
|
||||||
|
m_delayMoment = targetInfo.timeDelay;
|
||||||
|
|
||||||
// Add target to list
|
// Add target to list
|
||||||
m_UniqueTargetInfo.Add(targetInfo);
|
m_UniqueTargetInfo.Add(targetInfo);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user