privateNavMeshAgent nav;// Start is called before the first frame updatevoidStart(){if(GetComponent<NavMeshAgent>()==null){
gameObject.AddComponent<NavMeshAgent>();}
nav =GetComponent<NavMeshAgent>();}// Update is called once per framevoidUpdate(){if(Input.GetMouseButtonDown(0)){Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);RaycastHit hit;bool isCollider = Physics.Raycast(ray,out hit,100);if(isCollider){//如果被射线检测到的物体的Tag为“Target”,则将该物体的位置设为自动导航的目标点if(hit.collider.tag =="Target"){
nav.destination = hit.collider.transform.position;}//如果被射线检测到的物体的Tag为“Inv”,则将鼠标点击地面的位置点作为目标点elseif(hit.collider.tag =="Inv"){
nav.destination = hit.point;}}}}