private void Update()
{
if (!isMoving)
return;
animator.SetFloat("MoveSpeedMultiplicator", MoveSpeedMultiplicator);
transform.position += currentDirection * MoveSpeed * MoveSpeedMultiplicator * Time.deltaTime;
var newRemainingDistance = Vector3.Distance(gameObject.transform.position, currentTarget);
if (newRemainingDistance > DestinationDelta &&
((newRemainingDistance - currentRemainingDistance) < 0) || Time.deltaTime == 0) // we are getting closer to destination opr the game is paused.
{
currentRemainingDistance = newRemainingDistance;
return;
}
if (currentContinue != null) currentContinue();
}