メインループと入出力処理を作る つづき |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
よーし、できたっ!
なぽちゃん、見て見て!
こんな感じに作ってみたよ。
作り方は、ほとんど
クイズゲームと同じだけど。 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
 |
できたっ! |
|
今度は
大丈夫
かな・・・ |
 |
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
 |
 |
|
うん、いいね。
コメントもしっかり
書けてるし!
準備の部分だからね、
コードはクイズと同じ
ようなのになるよ。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
最初に、
動作テストをしておこう。
・・・うん、いいね。
入力した数字が表示されてる。
えーと、今回どんな処理を
作ったか一覧にできる? |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
はいっ。
クイズの時みたいに
作った処理の内容を
一覧表にまとめれば
いいんだね。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
ほっ。
問題なし! |
 |
|
 |
やったね。 |
|
|
|
 |
実行結果(出力ウィンドウ) |
|
|
|
 |
|
 |
|
解答:メインループと入出力処理を作る |
|
・メンバ変数の宣言と初期化処理 |
・メインループ |
・キー入力処理 |
・キー入力値のテスト用表示処理 |
・画面の区切り表示処理 |
|
|
|
|
|
 |
|
 |
|
|
足りてる
かな。 |
 |
|
 |
えらい、えらい。
もう大丈夫そうね。 |
|
|
|
|
 |
|
|
|
|
 |
 |
 |
|
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
うーんと、
これと・・・あとは・・・
えーと、
こんな感じかな? |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
|
|
|
|
|
|
|
|
よかった!
あー、
説明するの
どきどき
しちゃう。 |
 |
|
|
|
 |
こっちが
どきどき
しちゃうわあ。 |
|
|
|
|
|
|
 |
うんうん。 |
|
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
まず、メンバ変数用を
宣言する場所の見出しを
書きました。
そこに、キー入力値を
受け取る変数を宣言しました。
名前のつけ方とかは
クイズゲームと同じにしたよ。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
うんうん、いいぞ。
0で初期化は
クイズゲームと
同じにしたのね。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
えっと・・・ |
 |
|
 |
緊張しないで。
いい感じだから。 |
|
|
|
 |
|
 |
|
テキストアドベンチャーゲーム メインループと入出力処理
(KottonCastleEscapeのKCEMain.java)12行目~ |
|
・・・ |
|
|
012 |
|
public class KCEMain { |
013 |
|
|
014 |
|
//******************************************** |
015 |
|
// 定数 |
016 |
|
//******************************************** |
017 |
|
|
018 |
|
//******************************************** |
019 |
|
// 変数 |
020 |
|
//******************************************** |
021 |
|
private static int inputNum = 0;//入力番号 |
022 |
|
|
・・・ |
|
|
|
メンバ変数用の宣言場所に見出しを作成し、
入力値を保存する変数 inputNumをint型で宣言して0で初期化 |
|
|
|
 |
|
 |
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
うーんと・・・
変数 inputNumは
クイズゲームの時と同じように
メンバ変数で宣言したけど・・・
メイン関数の中で宣言した
方がよかったかな? |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
ああ、このままでいいよ。
複数の関数で使いそうな変数や
値をずっと保持しておきたい変数は
メンバ変数で宣言しておこう。
その関数内でしか使わないような
変数はその中で宣言しよう。
inputNumは複数の関数で使うからね。
これでおっけ。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
そっか。
メンバ変数は
値が消えない
もんね。 |
 |
|
 |
そゆこと。 |
|
|
|
 |
|
 |
|
引数とメンバ変数の使い分け方(最初)
引数 |
別のプログラムでも流用できそうな関数の場合
(例えば、キー入力処理のような、いろいろなゲームで使える関数) |
|
|
メンバ変数 |
・たくさんの関数で使う変数の場合
(例えば、どの処理モードでも使う共通変数)
・値を保持しておきたい変数の場合
(最初以外初期化されないで値を引き継げる。
例えば、勇者の生命力のようなゲーム中ずっと使う値。) |
|
|
2つを組み合わせて使う場合もある |
|
|
|
 |
|
 |
|
|
|
|
|
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
|
 |
 |
|
|
|
|
でも、今はまだそんなに
気にする必要ないよ。
必要に応じて変えれば
いいだけだから。
今は気軽にいろいろ
使って慣れてくれ。 |
|
|
|
|
|
 |
 |
|
 |
 |
|
|
 |
 |
 |
 |
 |
|
|
|
|
 |
|
|
|
|
|
ぼい・・・
柔軟にいこう。 |
 |
|
 |
なんか
言いかけてた? |
|
|
|
にこっ |
ここまでは
ぐっ? |
 |
|
ニカッ |
|
 |
ぐっ! |
|
|
ほっ。 |
 |
|
 |
はあ。 |
|
|