目次
前提
概要

- 今後の拡張を見据えて、少し雑になっていたオブジェクト関係を見直し
- それに伴いスクリプトの内容も見直し
- 茜ちゃん関連の操作は、トップレベルにいる AkaneController オブジェクトに実行させる
- 葵ちゃん関連の操作は、トップレベルにいる AoiController オブジェクトに実行させる
- AkaneController/AoiController は GameController からのカウント変更通知を受けて動作させる
スクリプトを見直す
ICounterReceiver
- 変更無し
+ | 詳細を開く |
Click
- クリックしたら GameController にインクリメントを依頼するだけの処理に変更
- 茜ちゃんの Click スクリプトコンポーネントは削除し、GameController オブジェクトに Click スクリプトを付け替え。
+ | 詳細を開く |
GameController
- 本クラスで実施していた葵ちゃん制御関連の関数は、AoiController に移動
- AoiController/AkaneController は本オブジェクトの counterReceivers にインスペクターから登録するよう変更
+ | 詳細を開く |
AkaneController
- 茜ちゃん制御用のクラスを新規作成
- Clickで実施していたアニメーションの制御を本クラスに移動し、UpdateCounter(カウンタ変更通知)で実施するよう変更
+ | 詳細を開く |
AoiController
- 葵ちゃんを生成する処理及び数の調整用関数を本クラスに移動
- それに伴い葵ちゃんを生成する位置は、外部から GameObject を登録する事で同座標に出現させるよう変更
- 葵ちゃんは AoiController 配下に生成されるよう変更し、検索も AoiController 配下のオブジェクトをカウントするよう変更
+ | 詳細を開く |
CounterTextController
- 変更無し
+ | 詳細を開く |
MenuMouseOver
- 変更無し
+ | 詳細を開く |
TriggerDestroy
- 葵ちゃん削除用の壁の名前を "Dead" で始まるように変更し、削除用の壁に触れたときのみ削除するよう判定を修正
- これによりメニューパネルの Collider で IsTrigger 設定を有効(接触判定を無効)にしても誤削除がされなくなる
+ | 詳細を開く |
Save
- 変更無し
+ | 詳細を開く |
Load
- GameController に最新の数値を通知するのみの処理に変更 (GameController による全体へのカウンタ更新通知で反映される)
+ | 詳細を開く |
Reset
- GameController にカウンタ 0 を通知するのみの処理に変更 (GameController による全体へのカウンタ更新通知で反映される)
+ | 詳細を開く |
Clear
- 変更無し
+ | 詳細を開く |
オブジェクトの関連付け等を見直す
オブジェクト名の変更と位置変更
- 葵ちゃんを削除する機能を持った壁類はDeadで始まるように変更
- それ以外は任意
- AkaneController/AoiController を追加
- 茜オブジェクトは AkaneController 配下に変更 ※葵ちゃんもAoiController配下に作成される
+ | 詳細を開く |
各種設定変更
パネルと葵ちゃんの接触判定を削除 + メニューマウスオーバーが葵ちゃんを誤検出しないよう修正
- IsTriggerの有効化
- これによりメニューと葵ちゃんが接触しなくなるよう変更
- 葵ちゃんのPrefabを Ignore Raycast レイヤーに変更
- これによりメニューと重なってもマウスオーバーを誤検出しなくなる
+ | 詳細を開く |
GameController のスクリプト設定
- リストに AkaneController と AoiController のオブジェクトを追加
- これにより茜ちゃん葵ちゃん関連の処理は、カウンタ値の更新通知で駆動するように変更
- 茜ちゃんに付けていた Click スクリプトを剥がして本オブジェクトに付け替え(茜ちゃんと言うより画面のクリックなので)
+ | 詳細を開く |
AoiController にクリック時に出現させる葵ちゃんのPrefabと出現位置を登録
+ | 詳細を開く |
AkaneController に茜ちゃんのオブジェクトを登録
- 配下にいるので検索できなくも無いが処理削減
+ | 詳細を開く |