質問: ●作成しているゲーム 縦型の2Dゲームを作成しています。 ストーンに当たるとプレイヤーは爆発します。 人参をとるとプレイヤーではなく人参が消滅するようなプログラムを組みたいと思っています。 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/cbaf1a18b56489e08616da9afc186de9.png) ●困っていること 人参に”point”というタグをつけて 人参に当たった時は人参がわが消滅するといった処理を行いたいです。 現状なぜかすり抜けてしまいます。 Debug.Logすら反応しない状況です。 ●人参側の処理 ``` private void OnCollisionEnter2D(Collision2D col) { if (col.gameObject.CompareTag("point")) { Destroy(col.gameObject); } } ``` ●人参のインスペクター ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/c676592b24304725a47d4ed971694702.png) ●ストーン側の処理(上手くいっている) ``` private void OnTriggerEnter2D(Collider2D collision) { Instantiate(explosion, transform.position, transform.rotation);//爆発プレファブの生成 Debug.Log("ぶつかったよ"); //ぶつかったらプレイヤーが破壊される Destroy(collision.gameObject); } ```
回答: PlayerManagerの方に下記のコードをつけたらできました!! private void OnTriggerEnter2D(Collider2D collision) { Debug.Log(collision.gameObject); if (collision.gameObject.CompareTag("point")) { Destroy(collision.gameObject); } }