销毁父对象Unity3D

问题描述 投票:0回答:2

我面临的问题是我希望销毁父对象,但我无法这样做。

我希望在子弹击中这些孩子时摧毁 User01。

我的代码如下。

JS:

function OnControllerColliderHit(col:ControllerColliderHit) {
    if(col.gameObject.tag == "Bullet") {
        Destroy(col.transform.parent.gameObject);
    }
}

C#:

public class PlayerDoe : MonoBehaviour {

    private GameObject par;

    // Use this for initialization
    void Start() {
        par = transform.parent.gameObject;
    }

    void OnCollisionHit(Collision col) {
        if (col.gameObject.tag == "Bullet") {
            Destroy(par);
        }
    }
}
c# unity-game-engine parent-child unityscript destroy
2个回答
2
投票

我相信你需要使用OnCollisionEnter,而不是OnCollisionHit。


1
投票

没有

OnCollisionHit()
。您想使用 OnCollisionEnter

void OnCollisionEnter(Collision collision)
{
    if(col.gameObject.tag == "Bullet")
       Destroy(transform.parent.gameObject);      
}
© www.soinside.com 2019 - 2024. All rights reserved.