自分のオブジェクトを消すこの程度なら、まだ、ifブロックに追加して対応できますね。メリットがわかりませんさらに、次のように要望はどうでしょう?派手な爆発アニメーションを実行したいタイマーを一時停止したい背景を点滅させたい今、シーンに存在しているすべての敵のスピードを一時的に遅くしたいなどなど・・・どうでしょう?やめて!もう色々言わないでってなりますねifブロックがどんどん膨れてきます。Destroy(gameObject);}すべてのメソッドをこのクラスに入れるとすべての要望を叶えたとしても膨大な行数になるでしょう。他のクラスのメソッドを呼ぶにもアクセスするためにFindやGetComponentをさらに追加する必要があり、非常に煩わしいですそれを嫌って、プレイヤーのお仕事でないメソッドを入れるとオブジェクト指向の設計原則に違反してしまいます。見づらく、拡張や修正が厄介なコードの完成になりますイベントの仕組みを使ってみます機能の追加をする予定がある(大抵そうでしょうが)時、素直にコードを追加していくと大変になりそうだというのはわかりました。UIのボタンイベントを作成したことがある前提ボタンが押下された時、どのゲームオブジェクトのどのメソッド(イベントハンドラ)が実行されるかを登録することができましたね。data)でシグネチャーを記述します。}}旧バージョンのUnity旧バージョンのUnityでは、UnityEventクラスが抽象クラス(Abstractクラス)になっているので、直接インスタンスを作成できません。同じようなコードにするためには、一旦、継承する必要がありました。次のような処理です最初の一回だけ敵の戦車が弾を発射したときに頭上にビックリマークを出すいずれかの戦車が弾を発射したらカメラを揺らす同じフレームで複数の戦車が発射した場合はSEは1回のみ再生するイベントでもできますが、LINQのように記述できるUniRXを使う方法もありますただし、学習障壁は少し高いです。コメントをキャンセルメールアドレスが公開されることはありません。付いている欄は必須項目ですコメント名前メールアドレスウェブサイト上に表示された文字を入力してください。コメントデータの処理方法の詳細はこちらをご覧ください。Unity【Unity】オプション設計のサンプルUnityでオプション登録を実装するためのサンプルコードです。