【发布时间】:2014-11-25 06:30:17
【问题描述】:
好的,我的场景中有 2 个硬币,如果船触发硬币,硬币都称为“硬币”,通过调用销毁硬币
Destroy(this.gameObject);
我还有一个未激活的着陆器(通过取消选中检查器中对象名称旁边的复选标记)
所以当两个硬币都被摧毁时我必须硬币我希望着陆器处于活动状态。我已经做到了,并通过硬币脚本中的这段代码工作:
var landing : GameObject;
function OnTriggerEnter2D (other : Collider2D) {
Destroy(this.gameObject);
if(Coin){
Debug.Log("Object exist");
}else{
landing.SetActive(true);
}
}
结果是当我击中第一个硬币时硬币被破坏(这应该发生)但是当我击中下一个硬币时它会破坏但没有使着陆器处于活动状态所以我怎样才能让着陆器只有在没有硬币的情况下才处于活动状态存在于现场
【问题讨论】:
-
Coin分配在哪里?我怀疑它可能指向您的预制件,该预制件将始终存在。您需要的是查看相关游戏对象的整个场景。所以,也许是GameObject.Find("Coin")- 但这样做的成本很高,所以如果你能避免的话,你不应该经常使用它。
标签: unity3d game-engine unityscript