画面の状態を管理する仕組みを作ってる
現在開発中のゲームの画面遷移の仕組みの話
StateMachine自体は状態を管理する仕組みですがとりあえず定義しました。
また、これらの実装についてはZenjectに依存する仕組みになっていますがZenject固有の話は出てこないので割愛します。
ゲーム側固有のものは以下の名前空間になります
・UseCase
・StateFactory
・State
・UnityEngine
ゲームから離れているものは以下になります
・NNState
特別な事は特に無くてStateに実際のStateの処理を描く、StateはFactory経由で生成するようにする。みたいな感じです。
たとえばタイトル画面に遷移したいときはGoToTitleUseCaseをボタンなりそういう処理で使うだけみたいな感じ
ボタンとか処理はStateMachineの事は知らない。
SubStateとかについては必要になりそうなら考えますが大枠の画面遷移はこれでいいかなーと言う感じ。
とりあえず動いてるし
この仕組は8耐というイベントでもくもくしながら作成しました。動いてよかった。
この記事が気に入ったらサポートをしてみませんか?