次回挑戦予定のラピュタはGUIにするつもりなので、実際に作り始める前に必要なデータ構造とかを見極めるためにも手持ちのコードで小さいプログラムを作ってみようと。
Cametanさんの過去記事を参考にして(CLIの時もそうだったけど)、Battle部分のみで作ってみようと言うことで。
![](https://blogimg.goo.ne.jp/user_image/36/d1/38143afeca3a425ffa97c86447c35fc0.jpg)
分かりやすく図解するとこういう感じで上部に該当ページとモンスター画像。モンスターが出ない場合は3Dダンジョンでもないし特に何も表示しないで良いか・・。
つまり一番下から
BG、
メッセージエリア、
上部エリア、
ページ表示、
モンスター表示
って感じで3層5オブジェクトって感じかな?
![](https://blogimg.goo.ne.jp/user_image/22/ce/8911a550d5cd4b4d84de7940cd25c604.png)
なんも分からない状態でとりあえず書き換え実験。うーん、textってformatからの文字列も受け付けるのかな?とか色々と不安
![](https://blogimg.goo.ne.jp/user_image/3c/97/f2af1100a6ed780ac0cfc485dc76cbf4.png)
エラーが出ないので実行してみたが・・(^_^;)
うーん、根本的に間違ってるなコリャ。
![](https://blogimg.goo.ne.jp/user_image/0e/5d/21ac515ff504bb7f9205b26b1b95df7d.png)
という訳で新たにファイルを作ってデータは一部共有するけど、独立した戦闘部分のみのゲームらしきものを作ることにしたのであった。構造体は前回の反省を少しでも取り入れて装備品スロット新設。それと最後に画像コントロール用のスロットを背景、選択肢、キャラクターの3つ持たせておく(Cametanさんの丸パクリ)。
![](https://blogimg.goo.ne.jp/user_image/6b/70/f74a8e7916c079a40a1647c859b1db0a.png)
モンスターリスト作成関数はそのまま使えるだろう
![](https://blogimg.goo.ne.jp/user_image/70/7d/8073383012684990e5c732f8537dff05.png)
バトルREAD関数は特殊な場合などを削って必要部分のみ。盛大に間違ってるとは思うけど数値も適当に入れておく。
![](https://blogimg.goo.ne.jp/user_image/12/33/42788679855c6d270efd41781377be96.png)
バトルINPUTも不要なものを削ってコンパクトに。不安なところはRead-lineなどの入力系だな〜
という訳で今回はここまで。Eval・Loopまで書いて・・そこからが正念場だw