我的问题很简单,如何通过 foreach 访问我的游戏对象自定义 C# 脚本。
我试过以下方法:
foreach(TowerController go in GameObject.FindGameObjectsWithTag("Tower")) {
go.upgradeTowerProgress = false;
}
好像不行。不知道为什么,这就是为什么我在这里问! xD
TowerController 是我在带有 Tower 标签的游戏对象上的自定义脚本。
最佳答案
这应该有效(未经测试):
foreach(GameObject go in GameObject.FindGameObjectsWithTag("Tower")) {
go.GetComponent<TowerController>().upgradeTowerProgress = false;
}
我改变的是你正在迭代一个 GameObject 数组,所以你需要做 foreach(GameObject go...
,然后你使用 GetComponent 函数来获取组件TowerController
类型,然后您可以访问其 updateTowerProgress
。THIS 页面始终是一个很好的引用。
关于c# - 在 Unity 中使用标签访问所有对象的脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14517733/