見出し画像

ダンジョンでお花摘みさせて!!"10月中に" #4

こんにちは。やーぺです。

 こちらは「ダンジョンでお花摘みなんか許しません!!」の二次創作、「ダンジョンでお花摘みさせて!」のスコアアタックゲーム開発記録です。(フリーウェア公開予定)

原作はこちら

(なぜかAmazonへのリンクができないため、今後は掲載ページをリンクさせてもらいます)

前回は「内部ロジックの構成」と「グラフィック(イラスト)」でしたね。

 今回はセーブ・ロード機能です。ゲームが好きな人なら「あー、あの記録するやつね」って思うかもしれませんね。

 まず作る前に私は「何を保存するか」と「どこに組み込むか」の二つを考えました。(今回はシステムの話しますね)

1.何を保存するか

 これは簡単で、各ステージのハイスコアやコンフィグ設定などを保存すればいいかなと結論がでました。問題は次です。

2.「どこに組み込むか」

 今回は「リザルト画面からステージ選択画面に遷移するときに自動でセーブをしたい」という考えがすでにありました。それだけでなく、保守性の観点から「設定画面の情報も同じ処理で保存したい」との考えも浮かびました。この二点から考えられることは「どこの画面からでも実行できるセーブ・ロード機能」が必要になりました。

ところでGodotにはシングルトン(自動読み込み)という機能があります。簡単に言うと、「シングルトンを設定すればゲーム中、どこからでも処理を呼び出せる」ということになります。この機能を使えば「どこの画面からでも実行できるセーブ・ロード機能」を満たすことができます。

そして、現在のシングルトンの構成がこちら。(青がシングルトン)

画像1

 GameManagerには「ゲーム全体の処理」、Stageには「プレイヤーの現在のスコア、ライフ、尿意などの保持」をしています。(尿意?って思ったら原作をチェックだ!)
 セーブ・ロード機能はゲーム全体の処理・・・って感覚なのでGameManagerに実装しました。

セーブ・ロード機能はこんな感じ。本当はもっと詳しい話をしようかと思ったのですけど、「何言ってんだ?」ってなると意味ないのでこの辺にしておきます。


最後にお知らせです。

10月中に体験版だします。

頑張って出します。10月のいつぐらいになるかはまだ決めてません。あしからず。

今回はここまで。ぼちぼち頑張っていきます。必要な機能は結構そろってきたのでメニュー画面のレイアウトを考えて、敵のアルゴリズム考えてプログラミングしてとぼちぼちやっていきます。来週はメニュー画面完成させてステージ試作してからデバッグするよ。

この記事が気に入ったらサポートをしてみませんか?