![見出し画像](https://assets.st-note.com/production/uploads/images/63096448/rectangle_large_type_2_fd651202c9c9a5484ffaf04c18ccec2a.png?width=1200)
ダンスゲーを作りたい#32 【画面】スタート画面
いよいよ画面の話をしていきましょう。
とはいっても最初はスタート画面なので死ぬほど単純ですが…。
画面遷移フロー
画面表示フローはいたってシンプル中のシンプルです。
画面遷移図とか作ったことないんでどう書いたらいいのか不明ですが、こんなイメージです。
呼び出し元としては処理以外ではゲーム起動時のみってことにしときます。
イメージ
通常はロゴ出して注意出してTapToStart出して終了です。
新規登録の際はTapToStat画面の前にPOPUPで新規登録をするPOPUPを表示します。
アカウントがないと新規作成用名前設定POPUPが出て、一旦最初に戻り、次はデータがあるのでホームまで行けます。
処理
ここで行う処理の目的はゲームスタートしていいですか?っていう確認です。始められないならスタートに戻します。
確認する項目は、
・アカウントがあるか
・データはちゃんと取得できるか
くらいなもんですね。
更新の確認とかもしたいですが、まぁ今はまだなくてもいいでしょう。
データ引継ぎは仕組みすら考えてないんでパスです。
TIPS
以前の記事で紹介した気がしますが、画面管理の方法として独自にPhaseという概念を創造しました。
ホーム画面ではいい感じに機能していたこの機能にも、ここにきてちらほら粗が露見しました。
特に今回問題なのは、ポップアップからポップアップを呼び出せないことです。
PhaseManagerのPOPUP表示処理の内今回の事象に関係ある部分の処理はこんな感じです。
これはPOPUPの表示元がPOPUP以外のオブジェクトっていう前提で成立していました。
POPUPから別のPOPUPを表示したい場合、POPUPから
・POPUPを表示させるリクエスト
・POPUPを消すリクエスト
を送る必要がありますが、以下図のように、失敗します。
というように、結果何もなくなると。そういうわけです。
管理って難しいですね。
結果として、今回は一旦Phaseを最初に戻すことで対応しましたが、結局PhaseManagerの根本的な見直しが必要でしょう。
いつかは必要になりそうってだけで、今はいらないので無視するんですけどね。
例えば、POPUPではなく別画面として別レイヤで扱えば問題なかったりするので、結局はその辺うまくやろうねっていうだけの話なのが真理な気がしますけど、まぁ最終自分が遊べればいいのでOK!
この記事が気に入ったらサポートをしてみませんか?