Как сделать анимацию персонажа, передвигающегося с одной точки к другой и при этом, достигнув точку, делает паузу?

У меня есть персонаж которому я задал команду передвигаться с одной точки к другой и при этом, достигнув точку, он делает паузу.

Как сделать так, чтобы, после паузы он разворачивался на 180 градусов и проигрывалась анимация ходьбы и покоя?

Вот код:

public float speed;
public Transform[] moveSpots;
private int randomSpot;
private float waitTime;
public float startWaitTime;
private SpriteRenderer sprite;
private Animator animator;

void Start () {
    randomSpot = Random.Range(0, moveSpots.Length);
    waitTime = startWaitTime;
    animator = GetComponent<Animator>();
    sprite = GetComponent<SpriteRenderer>();
}

void Update () {
    transform.position = Vector2.MoveTowards(transform.position, moveSpots[randomSpot].position, speed * Time.deltaTime);
    if (Vector2.Distance(transform.position, moveSpots[randomSpot].position) < 0.2f) {
        if (waitTime <= 0) {
            randomSpot = Random.Range(0, moveSpots.Length);
            waitTime = startWaitTime;
        } else {
            waitTime -= Time.deltaTime;
        }
    }
}

Ответы (0 шт):