我有一个易碎的平台,我想在它被破坏5秒后重新产生它。它完美无缺地破裂并重新产卵。然而,没有一个孩子的预制件,它是从产卵重新产卵。我设置平台的方式是有一个家长持有脚本,触发盒对撞机和音频源。然后有4个孩子是图形,他们也刹车离开父物体和刚体一旦被踩上就会打开。有人能帮上忙吗?
#pragma strict
var Platform : GameObject;
var child1 : GameObject;
var child2 : GameObject;
var child3 : GameObject;
var child4 : GameObject;
var audio2 : AudioSource;
private var hasPlayed = false;
function Start (){
child1.rigidbody2D.isKinematic = true;
child2.rigidbody2D.isKinematic = true;
child3.rigidbody2D.isKinematic = true;
child4.rigidbody2D.isKinematic = true;
}
function OnTriggerEnter2D(Other : Collider2D){
if(Other.gameObject.tag == "Player"){
child1.rigidbody2D.isKinematic = false;
child2.rigidbody2D.isKinematic = false;
child3.rigidbody2D.isKinematic = false;
child4.rigidbody2D.isKinematic = false;
transform.DetachChildren();
renderer.enabled = false;
audio.Play();
Respawn();
}
}
function Respawn(){
yield WaitForSeconds(5);
audio2.Play();
var PlatformClone = Instantiate(Platform, transform.position, transform.rotation);
Destroy(gameObject);
}发布于 2015-02-11 22:51:14
我不完全确定,但我认为你的问题来自transform.DetachChildren().Using这个命令会销毁你在实例化的GameObject上执行的hierarchy.If,它会起作用的。
但是如果你是在预制件本身上做这件事,你的GameObject在运行时剩下的时间里就没有孩子了。
你可能会有更多的机会找到你的问题的答案here。
https://stackoverflow.com/questions/28399511
复制相似问题