public class PathTool : MonoBehaviour
{
float speed;
Vector3[] path;
int index;
bool isStart = false;
public void SetPath(Vector3[] path, float speed)
{
index = 0;
this.speed = speed;
this.path = path;
}
public void Play()
{
isStart = true;
}
private void Move()
{
if (index == path.Length)
{
isStart = false;
return;
}
transform.position = Vector3.MoveTowards(transform.position, path[index],Time.deltaTime*speed);
if(Vector3.Distance(transform.position, path[index]) < 0.01)
{
transform.position = path[index];
index++;
Move();
}
}
private void Update()
{
if (isStart)
Move();
}
}