モードの関数の枠とモードの切換処理を作る つづき |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
できた!
見て見て!
モードの切換処理と
各モードの関数の枠を
作ったよ。
こんな感じで作ったんだけど。
どうかな、なぽちゃん。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
おー、できたかね。
うん、ざっと見た感じ
よくできてるん
じゃないかな。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
よし、
動作テスト
完了。 |
 |
|
 |
詳しく
見ていこう。 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
じゃあ、
動作テストをするよ。
・・・うん、いいね。
3つのモードちゃんと表示
できてるね。
キー入力する度に
モードが切り替わってる。
ちゃんと関数を実行したか
確認の表示もしてるんだな。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
やったね。
こうすれば
モードの切り替えしたって
分かるよね。
まだ終了できないでけど。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
いいね! |
 |
|
 |
えへへ
褒められた。 |
|
|
|
 |
実行結果(出力ウィンドウ) |
|
|
|
 |
|
 |
|
解答:モードの切換処理と各モードの関数の枠を作る |
|
・変数と定数の宣言と初期化 |
・各モードの関数の枠の作成 |
・モード切換処理(モードの実行) |
・モード切替処理(モードフラグの変更) |
|
|
|
|
|
 |
|
 |
|
|
発表するの
やっぱり
緊張するー。 |
 |
|
 |
大丈夫。
よくできて
るってば。 |
|
|
|
|
 |
|
|
|
|
 |
 |
 |
|
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
えーと、作った内容は
こんな感じかな。
クイズゲームのコードを
参考にして作ったよ。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
 |
|
|
|
|
 |
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
うん、いいんじゃね。
まずはクイズゲームを
真似して覚えよう。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
えへん |
また
褒められた! |
 |
|
|
|
 |
ごーごー |
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
まず、モード管理用の
変数と定数を作りました。
現在のモードを管理する
変数 nowMode を作って、
これに定数を入れてモードを
切り替えます。
始まりは、1階層目の
MODE_GAME_1_ACTに
初期化しました。
|
|
|
 |
 |
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
 |
画面単位
って感じかな?
これも
クイズと同じ。 |
|
おっけ。 |
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
行動処理モードと
対象処理モードと
結果処理モード。
モードは、仕様書の
「処理の構造」の図と
同じにしたんだな。
うん、いいね。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
 |
|
 |
|
テキストアドベンチャーゲーム
モードの切換処理と各モードの関数の枠
(KottonCastleEscapeのKCEMain.java)14行目~ |
|
・・・ |
|
|
014 |
|
//******************************************** |
015 |
|
// 定数 |
016 |
|
//******************************************** |
017 |
|
//入力・表示処理モード |
018 |
|
private static final int
MODE_GAME_1_ACT = 1;//行動処理モード(1階層目 どうする?行動コマンド) |
019 |
|
private static final int
MODE_GAME_2_TAR = 2;//対象処理モード(2階層目 なにを?対象コマンド) |
020 |
|
private static final int
MODE_GAME_3_RES = 3;//結果処理モード |
021 |
|
//******************************************** |
022 |
|
// 変数 |
023 |
|
//******************************************** |
024 |
|
private static int inputNum = 0;//入力番号 |
025 |
|
private static int nowMode =
MODE_GAME_1_ACT;//現在の処理モード:最初は1階層目 |
・・・ |
|
|
|
仕様書の「処理の構造」の図から必要な定数と変数を決めた。 |
|
|
 |
|
 |
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
うーん、クイズと同じ様に
全部メンバ変数で宣言
したけど。
変数
nowModeは
複数の関数で使いそうだし・・・。
定数も複数の関数で使うよね。
これでいいのかな? |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
いいね。
そんな感じで考えてくれ。
メンバ変数とかはまだ
そんなに悩まなくて
いいからね。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
よかった。 |
 |
|
 |
柔軟にいこう。 |
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
それから、えっと・・・
変数と定数の
名前の付け方は
こんな感じでいい? |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
いいんじゃね。
MODE_GAME + 階層 + モード名
って感じだろ?
モード名は、
ACTは、action(行動)
TARは、target(対象)
RESは、result(結果)
番号でコマンドの階層も分かるし。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
 |
分かり
やすいね。 |
|
|
|
 |
付けるの
難しいね。 |
|
今の勉強の
本筋じゃない
からね。
考えるのは
いいこと
だけど。 |
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
名前の付け方も
あまり複雑に考えないで、
気楽に行こう。
自分に分かりやすいように
付ければいいからね。
徐々に固めて行こう。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
でもお、しいて言うなら~
MODE_GAME_1_ACT の
GAMEは余計かな。
ちょっと長いよね。
MODE_1_ACT で十分だねえ。 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
フフン |
|
 |
まだまだ
甘いのお~。 |
|
ごめん。
余計
だったね。。。 |
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
でも、後で
オープニングとエンディング
付けるから・・・。
MODE_OPENINGと
MODE_ENDINGも
必要になるでしょ?
MODE_GAMEにした方が
ゲームのモードと区別
しやすいかなって。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
ゲッ |
|
 |
うそーん。
デキスギ
ジャーン。 |
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
もちろん!
だって、オープニングと
エンディングは
絶対必要だもん!
やっぱり、
名前って重要だよね! |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ぺっぺー |
優秀な方の
お帰りは
あちら! |
 |
|
 |
 |
汚いー。 |
|
|