前提
Unityで即死ダメージを受ける領域を作ろうとしているのですが、領域と接触してもダメージが入りません。
実現したいこと
OnTriggerEnter2Dでキャラクターにダメージを与えられるようにしたい。
発生している問題・エラーメッセージ
NullReferenceException: Object reference not set to an instance of an object
該当のソースコード
C#
1 public LayerMask m_CharactorMask; // ダメージを受けるレイヤー 2 public float m_DeathDamage = 9999f; 3 public Vector2 m_DeathSize = new Vector2(1f, 1f); 4 5 public void OnTriggerEnter2D(Collider2D other) 6 { 7 Collider2D colliders = Physics2D.OverlapBox(transform.position, 8 m_DeathSize, m_CharactorMask); 9 // コライダーからRigidbody2Dを取得する 10 Rigidbody2D targetRigidbody2D = colliders.GetComponent<Rigidbody2D>(); 11 // Healthクラスへの参照を得る 12 Health targetHealth = targetRigidbody2D.GetComponent<Health>(); 13 // ダメージを与える 14 targetHealth.TakeDamage(m_DeathDamage); 15 }
回答1件
あなたの回答
tips
プレビュー