Ошибка определения пути машинки

Cоздал скрипт в котором машинка должна ехать до определёной точки по тригерам, в итоге она ездит по кругу в центре сцены.

Помогите найти в чём проблема

using System;
using UnityEngine;

public class CarController : MonoBehaviour
{
   
   private Rigidbody _rb;
   public float speed = 5f, finalSpeed = 15f, rotateSpeed = 50f;
   private bool isClicked;

   [NonSerialized] public Vector3 FinalPosition;

   void Awake()
   {
      _rb = GetComponent<Rigidbody>();
   }

   void OnMouseDown()
   {
      isClicked = true;
   }

   void Update()
   {
      if (FinalPosition.x != 0)
         transform.position = Vector3.MoveTowards(transform.position, FinalPosition, finalSpeed * Time.deltaTime);

      Vector3 LookAtPos = FinalPosition - transform.position;
      LookAtPos.y = 0;
      transform.rotation = Quaternion.RotateTowards(transform.rotation, Quaternion.LookRotation(LookAtPos),
         Time.deltaTime * rotateSpeed);

      if (transform.position == FinalPosition)
         Destroy(gameObject);
   }

   void FixedUpdate()
   {
      if (isClicked && FinalPosition.x == 0)
         _rb.MovePosition(_rb.transform.position + _rb.rotation * Vector3.forward * speed * Time.fixedDeltaTime);
      {
      }
   }

}

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