IEnumerator WarpLerp(Vector3 pos) { float timer = 0; startPos = transform.position; pos.y = startPos.y; do { timer += Time.deltaTime; transform.position = Vector3.Lerp(startPos, pos, timer / warpTime); if (timer < warpTime) { yield return(null); } else { break; } } while (true); isMoving = false; currentTile.FinishMoveTo(); }