在我的游戏中,一名玩家放置了一颗炸弹,炸弹爆炸而产生了射击效果,我希望自己的火能杀死该玩家(蓝色圆柱体)及其所碰到的任何盒子。我的盒子和播放器有对撞机。炸弹爆炸时会实例化我的射击效果。
如何使射击效果破坏播放器和盒子中的物体?
我可以说 if fire collider hits player collider, destroy player?
我的炸弹代码如下
Instantiate(Firebolt, bomb.gameObject.transform.position, Quaternion.identity);
游戏布局
答案 0 :(得分:1)
您还可以在Firebolt中添加对撞机,并在其上使用OnCollisionEnter,检查您击中的对象是玩家还是盒子。
这是一个简单的示例,它摧毁了所有与之碰撞的玩家或盒子:
void OnCollisionEnter(Collision collision) {
GameObject other = collision.gameObject;
// Here I'm using tag to detect if the hit object is a player or a box
// but you can use name or other methods
if (other.tag == 'Player' || other.tag == 'Box') {
Destroy(other);
}
}
答案 1 :(得分:0)
签出https://docs.unity3d.com/ScriptReference/MonoBehaviour.OnParticleCollision.html
您可以将其应用于“粒子系统”或应该对其做出反应的目标GO。
(u还需要在粒子系统上激活碰撞检测并将其设置为世界。