public class Partrol : MonoBehaviour {
public Transform startPoint;
public Transform endPoint;
private Vector3 targetPos;
private float moveSpeed;
private float timer;
private bool isTarget;
// Use this for initialization
void Start () {
targetPos = endPoint.position;
//让物体NPC看向目标点
transform.LookAt(targetPos );
moveSpeed = 5f;
}
// Update is called once per frame
void Update () {
if (Vector3.Distance(transform.position,targetPos)<0.5f)
{
moveSpeed = 0;//到达目标点停滞三秒
timer += Time.deltaTime;
if (timer>=3)
{
if (isTarget)
{
targetPos = endPoint.position;
isTarget = false;
}
else
{
targetPos = startPoint.position;
isTarget = true;
}
transform.LookAt(targetPos);
moveSpeed = 5;
timer = 0;
}
}
transform.Translate(transform.forward * moveSpeed * Time.deltaTime, Space.World);
}
}
Unity实现NPC巡逻
于 2024-06-22 12:38:47 首次发布