【发布时间】:2025-12-25 00:55:12
【问题描述】:
我刚开始使用 Unity,在我的第一款游戏中,我试图让这些敌方方块追逐玩家。敌人在随机位置生成,我试图让它们向玩家立方体的位置移动。但是当我尝试引用玩家的变换时,它不会让我将它拖到顶部,有什么修复吗?
using UnityEngine;
public class enemyFollow : MonoBehaviour {
public Transform player;
public Rigidbody rb;
public float movementForce;
// Update is called once per frame
void FixedUpdate()
{
if (player.position.x > transform.position.x){
rb.AddForce(movementForce * Time.deltaTime,0,0);
}
if (player.position.x < transform.position.x){
rb.AddForce(-movementForce * Time.deltaTime,0,0);
}
if (player.position.z > transform.position.z){
rb.AddForce(0,0,movementForce * Time.deltaTime);
}
if (player.position.z < transform.position.z){
rb.AddForce(0,0,-movementForce * Time.deltaTime);
}
}
}
Unity 不允许我将玩家从游戏对象窗口拖到预制件上的脚本上。错误说“没有分配enemyFollow的变量播放器” 它不会让我分配 Player。
【问题讨论】:
-
这个问题是关于UnityScript(一种从 Javascript 派生并为 Unity 创建的已弃用的编程语言)还是关于 C#(一种完全不同的编程语言)?对我来说它看起来像 C#,所以我删除了
[unityscript]标签。 -
你拖的是场景视图中的播放器对象还是播放器预制文件?