我有一个游戏对象,它是按钮(称为图块),单击该按钮时它将处于非活动状态,并且需要测试一个条件,如果条件为true,则按钮将被销毁,但是如果按钮为false,则按钮将返回保持其活动状态。
我的游戏管理器脚本(条件):
public void checkword()
{
wordBuilded = displayer.text.ToString();
if (txtContents.Contains(wordBuilded))
{
Debug.Log(wordBuilded + " Is on the list");
wordScore++;
Debug.Log(wordScore);
}
else
{
Debug.Log("Someting is wrong..");
FindObjectOfType<LetterTiles>().tileStatus();
}
}
在“我的按钮(平铺)”脚本(按钮上的脚本)上:
public void letterClick()
{
gameManager.currentWord += letter;
gameObject.SetActive(false);
}
public void tileStatus()
{
gameObject.SetActive(true);
}
答案 0 :(得分:0)
停用对象后,Unity将无法使用FindObjectOfType
找到它。
在禁用它之前在游戏管理器中保留对对象[按钮]的本地引用,或者以其他方式隐藏按钮。
由于使用的是按钮,因此可以使用按钮的interactable
属性将其禁用(如果要隐藏它,则将禁用的颜色更改为透明),例如:
gameobject.GetComponent<Button>().interactable = false;