unity敌人追踪玩家代码
时间: 2023-06-22 09:33:03 浏览: 172
以下是一个基本的Unity敌人追踪玩家的代码示例:
```csharp
using UnityEngine;
public class EnemyController : MonoBehaviour
{
public float speed = 5.0f; // 敌人的移动速度
public Transform target; // 玩家的位置
private void Update()
{
// 计算敌人朝向玩家的方向
Vector3 direction = target.position - transform.position;
// 让敌人面向玩家
transform.LookAt(target);
// 如果敌人与玩家之间的距离大于0.5,则向玩家移动
if (direction.magnitude > 0.5f)
{
transform.Translate(direction.normalized * speed * Time.deltaTime, Space.World);
}
}
}
```
在这个代码中,我们首先定义了敌人的移动速度和玩家的位置。在Update()函数中,我们计算出敌人面向玩家的方向,并让敌人面向玩家。然后,我们检查敌人与玩家之间的距离是否大于0.5,如果是,就让敌人向玩家移动。我们使用normalized属性来获取方向向量的单位向量,这样敌人就会以一定的速度向玩家移动,而不会一下子飞过去。