広告
  サイト内検索:
<Let's create a game!> Introduction of programming for absolute beginners English
 

SESSION 13 その11
モードの関数の枠とモードの切換処理を作る つづき
  解答

できた!

見て見て!
モードの切換処理と
各モードの関数の枠を
作ったよ。


こんな感じで作ったんだけど。
どうかな、なぽちゃん。
おー、できたかね。

うん、ざっと見た感じ
よくできてるん
じゃないかな。
よし、
動作テスト
完了。
詳しく
見ていこう。
 
コード2:モードの切換処理と各モードの関数の枠
コードをリンク先から参照して下さい

  動作テスト

じゃあ
動作テストをするよ。


・・・うん、いいね。
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にした方が
ゲームのモードと区別
しやすいかなって。


うそっ!

そこまで考えて
名前付けてたの?
ゲッ  
うそーん。

デキスギ
ジャーン。
 
もちろん!

だって、オープニングと
エンディングは
絶対必要だもん!


やっぱり、
名前って重要だよね!

ハイッ、
キミ卒業!!


教える事はなんもねー!
 
なんで、なんでー!

やめてー!
  ぺっぺー
優秀な方の
お帰りは
あちら!
汚いー。

 
 

広告
home もくじ 前のページを読む 次のページを読む
  サイト内検索:
広告
お勧めの姉妹サイト
leafdays - リーフデイズ 超初心者のための園芸入門 - 楽しい趣味のガーデニング -
広告