private IEnumerator MoveLane(float x, float y)
{
Vector2 initialPosition = transform.localPosition;
Vector2 destination = new Vector2(x, y);
float delta = 0;
while(transform.localPosition != destination)
{
delta += Time.deltaTime * speedModifier;
characterController.Move(Vector2.Lerp(initialPosition, destination, delta));
yield return new WaitForEndOfFrame();
}
}
Запустите эту сопрограмму, если вы хотите поменять местами дорожки, где x и y - это требуемая координата назначения.Вы можете регулировать скорость с помощью speedModifier (1 означает «нормальный»).