[英]Unity GameObject.FindGameObjectsWithTag (“Player”).transform.position;
你好,我有问题,我需要使用标签播放器获取超过1个对象的transform.position,以便脚本追逐多个播放器
using System.Collections.Generic;
using UnityEngine;
public class enemyChase: MonoBehaviour
{
//private GameObject[] Player;
Transform Player;
// Use this for initialization
void Start ()
{
Player = GameObject.FindGameObjectsWithTag ("Player").transform.position;
}
// Update is called once per frame
void Update ()
{
if (Vector3.Distance (Player.position, this.transform.transform.position) < 10) {
Vector3 direction = Player.position - this.transform.position;
this.transform.rotation = Quaternion.Slerp (this.transform.rotation, Quaternion.LookRotation(direction), 0.1f);
if (direction.magnitude > 1) {
this.transform.Translate (0,0,0.05f);
}
}
}
}
FindGameObjectsWithTag
返回一个数组,并且数组没有.transform
属性。
您需要使用循环并遍历结果(可能是找到最近的? )。
另外,在您的脚本中, Player
的类型为Transform
,但是您尝试为其分配.transform.position
(类型为Vector3)的值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.