I have a moveTowards function that will move toward a position using CharacterController.Move. I want to make it so that if I pass a position, the moveTowards function run for a several frames until the character reaches that position… since for now if I call the function, it will move/“teleport” a small bit (probably calls the move function one frame?) and that’s it. Is there a way for this?

**I’m considering using coroutine but there is no specification on if it runs on all frames :frowning:

Hello!

You can use Coroutine or Invoke, or doing it manually.

Like:

	private IEnumerator	MoveTowards(int n)
	{
		while (n > 0)
		{
			// MOVE TOWARD
			--n;
			yield return null;
		}
	}

I would use the Update() of a CharacterMove component to do that, checking if I’m already at the destination point or if I need to move some more !