当我尝试执行以下代码时,我遇到了这个错误。它应该做的是将标签“Player1”设置为false,将“Player2”设置为true。
using UnityEngine;
using System.Collections;
public class Events : MonoBehaviour {
void Update ()
{
if (Variables.Player1Turn == false)
{
GameObject.FindGameObjectWithTag("Player1").SetActive(false);
GameObject.FindGameObjectWithTag("Player2").SetActive(true);
}
}
}
事情是,“事件”和“变量”是不会消失的空对象的组成部分。
以下是“变量”包含的内容:
using UnityEngine;
using System.Collections;
public class Variables : MonoBehaviour {
static public string Player1Choice=null;
static public bool Player1Turn=true;
static public string Player2Choice=null;
static public bool Player2Turn=true;
}
当按下标有“播放器1”的面板上的按钮时,Player1Turn变为假。
注意:我知道在
处抛出了SystemNullReference异常 GameObject.FindGameObjectWithTag("Player2").SetActive(true);
但是,我无法找到解决办法。
我应该怎样做才能让第一个面板消失,第二个面板出现而不会遇到此错误?