Menu
CoddyTech

命中する弾丸

CoddyのUnityジャーニー「物理演算とゲームプレイ」セクションの一部。レッスン 56/71。

challenge icon

チャレンジ

中級

弾丸を書こう。Healthを持つものにダメージを与え、命中したものを通り抜ける。

  1. Bulletにvoid OnCollisionEnter(Collision collision)を追加します。
  2. その中で、if (collision.gameObject.TryGetComponent(out Health health))のとき、health.TakeDamage(damage);を呼び出します。
  3. そのifの後にDestroy(gameObject);を呼び出します。これで、壁に当たった弾丸も消えます。

「プレイ」を押して、ダミーと壁を撃ちます。その後、「確認」を押します。

自分で試してみよう

using UnityEngine;

public class Bullet : MonoBehaviour
{
    [SerializeField] private int damage = 2;

    // 命中時: Health を持つ対象にダメージを与え、その後弾を破壊する
}

物理演算とゲームプレイのすべてのレッスン

自分で練習してみよう: Unityプレイグラウンド