在鼠标上使用Enemy进行剑道碰撞检测

时间:2016-08-07 13:28:50

标签: unity3d unity5

视频网址,以便于理解 - http://tinypic.com/r/28jdyyq/9

在这段视频中,你可以看到我的问题,当剑触及敌人时......敌人被摧毁..但我想要当我点击鼠标(或点击),然后只有..敌人应该摧毁..

void OnTriggerEnter(Collider col)
    {
        if (col.GetComponent<Collider>().tag == "enemy")
        {
            Destroy(col.gameObject);

        }
    }

这是我的代码,我有敌人和带剑的玩家(与对手),一切都很完美,我想当我点击鼠标按钮然后只有剑应该杀死敌人,

但是,当我带着我的玩家(带剑)靠近敌人并且剑触及敌人时会发生什么事情,没有我被剑击中就会杀死敌人。

我通过在Trigger中添加鼠标点击事件尝试了以下代码,但没有任何反应。任何想法请

void OnTriggerEnter(Collider col)
    {

        if (Input.GetButtonDown("Fire1")){

                if (col.GetComponent<Collider>().tag == "enemy"){

                    Destroy(col.gameObject);
                }

        }

    }

1 个答案:

答案 0 :(得分:0)

您可以在OnTriggerStay中尝试相同的代码,因为OnTriggerEnter只会被调用一次。

void OnTriggerStay(Collider col)
{
    if (Input.GetButtonDown("Fire1")){

        if (col.GetComponent<Collider>().tag == "enemy"){

            Destroy(col.gameObject);
        }
    }
}