首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gameobject不会实例化prefab的子对象

Gameobject不会实例化prefab的子对象
EN

Stack Overflow用户
提问于 2015-02-09 05:23:06
回答 1查看 1.4K关注 0票数 1

我有一个易碎的平台,我想在它被破坏5秒后重新产生它。它完美无缺地破裂并重新产卵。然而,没有一个孩子的预制件,它是从产卵重新产卵。我设置平台的方式是有一个家长持有脚本,触发盒对撞机和音频源。然后有4个孩子是图形,他们也刹车离开父物体和刚体一旦被踩上就会打开。有人能帮上忙吗?

代码语言:javascript
复制
#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);
}
EN

回答 1

Stack Overflow用户

发布于 2015-02-11 22:51:14

我不完全确定,但我认为你的问题来自transform.DetachChildren().Using这个命令会销毁你在实例化的GameObject上执行的hierarchy.If,它会起作用的。

但是如果你是在预制件本身上做这件事,你的GameObject在运行时剩下的时间里就没有孩子了。

你可能会有更多的机会找到你的问题的答案here

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28399511

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档