if ( kills >= 14) { dialogueBoxs.SetActive(true); } if (sun == 20) { dialogueBox.SetActive(true); }找不到游戏对象时自动weinull
时间: 2023-06-17 08:08:15 浏览: 55
ChromeDriver 75.0.3770.140_mac64
在使用 GameObject.Find() 方法查找游戏对象时,如果场景中不存在该对象,方法会返回 null。因此,在使用 GameObject.Find() 方法之后,应该对返回值进行判断,以避免出现空引用异常。
可以使用以下代码来避免空引用异常:
```
GameObject dialogueBoxs = GameObject.Find("DialogueBoxs");
if (dialogueBoxs != null && kills >= 14) {
dialogueBoxs.SetActive(true);
}
GameObject dialogueBox = GameObject.Find("DialogueBox");
if (dialogueBox != null && sun == 20) {
dialogueBox.SetActive(true);
}
```
这样,即使场景中不存在名为 "DialogueBoxs" 或 "DialogueBox" 的游戏对象,代码也不会出现空引用异常。
阅读全文