gpt4 book ai didi

c# - 如何在 Unity 中访问子游戏对象的组件?

转载 作者:太空宇宙 更新时间:2023-11-03 14:46:04 24 4
gpt4 key购买 nike

我想启用一个健康条 Canvas ,它是我敌人的 child 。我不知道如何访问子组件。

脚本附加到“FightController”。我会根据他们的标签找到敌人。每个敌人-GameObject 都有一个“健康栏”-GameObject。

void Start()
{
enemy = GameObject.FindGameObjectsWithTag("enemy");

for(int enemyNumber = 0; enemyNumber < 5; enemyNumber++){
enemy[enemyNumber].GetComponentInChildren<Canvas>().enabled = true; //This is not working.
}
}

我收到以下错误:“NullReferenceException:对象引用未设置为对象的实例”

最佳答案

好吧,你可以尝试使用 transform.GetChild[0].GetComponent<Canvas>()并确保它不为空。当然如果 Canvas 是n你敌人的第 th 个 child 然后使用 GetChild[n]而不是 0 .

从我的评论中复制

关于c# - 如何在 Unity 中访问子游戏对象的组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54160079/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com