using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class CarMoveManager : MonoBehaviour { public PowerMessage PowerMsg; public GameObject[] RoadPoints;//移动拐点 public GameObject Car; private float PathLength; private bool CanMove; private float Speed; private int index = 1; //private float disPrevCan; //private float disPrevPointCan; //private float disTotal; private float indexPath; private float movedDis; private float time; private Vector2 startPos; //private List MyList; private List> MyList; void Awake() { //读取路径长度作为总出警总距离 for (int i = 0; i < RoadPoints.Length - 1; i++) { //PathLength += Vector2.Distance(RoadPoints[i].transform.position, RoadPoints[i + 1].transform.position); PathLength += Vector2.Distance(RoadPoints[i].GetComponent().anchoredPosition, RoadPoints[i + 1].GetComponent().anchoredPosition); } } private void ShowNowMessage() { //List TestList = TestData(); //PowerMsg.ShowMessage(MyList, (PathLength - disTotal).ToString("#.##") + "Km", // DateTime.Now.ToString("yyyy:MM:dd HH:mm:ss")); float tempDis = 0;//当前段路径已移动多少距离 tempDis = Vector2.Distance(Car.GetComponent().anchoredPosition , RoadPoints[index - 1].GetComponent().anchoredPosition); float currentDis = movedDis + tempDis; PowerMsg.ShowMessage(MyList, (PathLength - currentDis).ToString("#.##") + "Km", DateTime.Now.ToString("yyyy:MM:dd HH:mm:ss")); } //控制地图上车标志移动的方法 public void MoveCar(float NeedTime, List> DataList) { Speed = PathLength / NeedTime; StartCoroutine(WaitTheSet()); MyList = DataList; Car.GetComponent