制造摧毁玩家的对象

时间:2016-03-11 14:28:29

标签: c# android unity3d

我在Unity(C#)上编写简单的游戏

我有玩家,想要制造毁灭者,这将摧毁玩家。

我创造了驱逐舰的预制件。接下来,我创建Quad。

我已经产生了脚本:

    using UnityEngine;
using System.Collections;

public class SpawnScript : MonoBehaviour {


    public GameObject[] obj;
    public float spawnMin = 1f;
    public float spawnMax = 2f;

    // Use this for initialization
    void Start () {


        Spawn();


    }

    void Spawn()

    {
        Instantiate(obj[Random.Range(0, obj.GetLength(0))], transform.position, Quaternion.identity);
        Invoke("Spawn", Random.Range(spawnMin, spawnMax)); 

    }
}

我也写DestroyerScript:

using UnityEngine;
using System.Collections;

public class DestroyerScript : MonoBehaviour {

    void OnTriggerEnter2D(Collider2D other)
    {
        if (other.tag == "Player")
        {
            Application.LoadLevel(1);
            return;
        }

        if (other.gameObject.transform.parent)
        {
            Destroy(other.gameObject.transform.parent.gameObject);
        }

        else
        {
            Destroy(other.gameObject);
        }
    }
}

我的驱逐舰产卵,但当玩家得到它时,我没有Game Over屏幕。

Passing

1 个答案:

答案 0 :(得分:0)

向玩家和“玩家驱逐舰”添加刚体,然后在你的玩家驱逐舰上设置onTriggerEnter,如下所示:

void OnTriggerEnter(Collider other) {
    Destroy(other.gameObject);
}

对于一些微调,你可以做一些检查,如果其他对象实际上是毁灭者(你可以比较标签或者什么,我不会去现在太详细了。)

编辑:取消选中BoxColliders上的“isTrigger”,试试这个:

void OnCollisionEnter (Collision col)
{
         Destroy(col.gameObject);
}