我已经开始慢慢地使用 C# 学习 Unity,到目前为止它一直很受欢迎!
我遇到了一个小问题(我希望这是一个小问题)并被卡住了,从那以后我一直在质疑我的理智。
在我首先运行的主脚本中,我有代码动态生成一个原始(球体)并将脚本附加到它,脚本检查球体是否已被触发。
主脚本
bool createNav (Vector3 _start) {
GameObject nav = GameObject.CreatePrimitive(PrimitiveType.Sphere);
nav.AddComponent<NavTrigger>();
nav.collider.isTrigger = true;
nav.transform.localScale = new Vector3(1f,1f,1f);
nav.transform.position = _start;
return nav.GetComponent<NavTrigger>().Triggered;
}
我的另一个剧本
private bool triggered = false;
void OnTriggerEnter() {
this.triggered = true;
}
public bool Triggered {
get { return this.triggered; }
}
可悲的是,无论它运行 OnTriggerEnter 代码,它仍然返回 false。
请,如果有人有任何想法或建议,请告诉我,我会尝试做任何事情来完成这项工作。
非常感谢您的帮助!:)