嘿伙计们,所以我是一名新的程序员。对于学校的入学,我必须进行统一游戏。所以我决定做一个滚动射击游戏。我有两个脚本,一个在游戏对象上,另一个在UI元素上。我希望在游戏对象被销毁时更改UI元素中的分数。但每当我杀死对象时,我都会收到此错误代码: NullReferenceException:未将对象引用设置为对象的实例 EnemyController.Update()(在Assets / Scripts / EnemyController.cs:22)
敌人控制器是预制件,将产生多个。 这是违法的代码:
public class EnemyController : MonoBehaviour {
public ScoreUi scoreUi;
void Update(){
if (health <= 0) {
Destroy (gameObject);
scoreUi.score++;
}
}
}
这是UI脚本 第22行是一个UI.Text对象,它抛出了由!!!标记的NULL异常。
public class ScoreUi : MonoBehaviour {
static int score = 0;
public Text Score;
// Update is called once per frame
void Update () {
//This is line 22.
!!! Score.text = "Score: " + score.ToString ();
}
任何帮助将不胜感激!