2015-12-18 37 views
1

我想要做的就是當我的主角與它相撞時讓我的怪物消失。所以,我把這個腳本附加到我的怪物上,但是我無法讓它工作。我成功摧毀了怪物的RigidBody組件,但我似乎無法破壞整個事情。如何在遊戲對象與主角相撞時摧毀整個預製件?

using UnityEngine; 
using System.Collections; 

public class Dying: MonoBehaviour { 
private Rigidbody rbody; 
public GameObject prefab; 


void Start() { 
    rbody = GetComponent<Rigidbody>(); 
GameObject obj = Instantiate(prefab); 

} 


void Update() { 


} 
void OnCollisionEnter(Collision col) 
{ 
    print(col.collider.name); 
    if(col.collider.name =="unitychan") 
    { 
     Destroy(prefab.gameObject); 

    } 
} 
} 

回答

2

什麼問題可能是您試圖銷燬運行腳本的對象或其他一些隨機對象。您通常不會銷燬運行腳本的對象。此外,col包含碰撞的對象。所以你可以這樣做:

void OnCollisionEnter(Collision col) 
{ 
    if (!col.collider.name == "unitychan") return; 

    Destroy(col.gameObject); 
} 
+1

謝謝你,奧斯汀。 :) – user5641102

相關問題