我遇到了问题...我创建了一个父项(EmptyGameObject)及其子项(导入的3D模型)。子对象具有布尔变量,如果它与障碍物(标记为“障碍”)相撞,则该变量会更改。我为父级创建了一个脚本,该脚本加载了bool变量VariabileBool classTest = cubo.GetComponentInChildren<VariabileBool>();
,但是有一个问题... bool变量的值,当在子代脚本中更改的状态为状态时,不更新bool变量的值(变为true)...如何我可以解决这个问题吗?对不起,我的英语不好...
VariabileBool脚本(在子对象上):
public class VariabileBool : MonoBehaviour
{
public bool variabile = true;
}
用于读取变量的父脚本:
public class LettoreVariabile : MonoBehaviour
{
VariabileBool classeVariabile;
public GameObject cube;
private void Start()
{
classeVariabile = cube.GetComponentInChildren<VariabileBool>();
}
void Update()
{
Debug.Log(classeVariabile.variabile);
}
}
我尝试更新Void Start()
中bool的状态,但是不起作用...
一旦变量进入状态,它就不会改变...
答案 0 :(得分:0)
您可以尝试通过这种方式从另一个对象访问VariabileBool对象;
然后,打开您的场景,在场景层次中选择LettoreVariabile。将VariableBoolObject拖放到检查器中LettoreVariabile的classeVariabile区域。
我希望这是您搜索的答案。祝你有美好的一天。
public class LettoreVariabile : MonoBehaviour
{
public VariabileBool classeVariabile;
void Update()
{
Debug.Log(classeVariabile. variabile);
}
}