タイピングゲーム制作|Javaから楽しく学ぶ!ゲームプログラミング専門学校

Javaから楽しく学ぶ!ゲームプログラミング専門学校

ゲームプログラミングとはその名のとおりゲームのプログラムを作ることを指します。『Javaから楽しく学ぶ!ゲームプログラミング専門学校』ではゲームプログラミングについて、実際にゲームプログラムをJAVAプログラミング言語を使用し、作成していきながら詳しく解説していきます。

タイピングゲーム制作

Javaでタイピングゲームを作成してみます。

まずはプログラム動作の流れを簡単にまとめます。

Javaアプレットが読み込まれたらまず、デモ画面を表示し、デモ画面上でスペースキーを押下するとゲームを開始させるようにします。
タイプさせる文字は一文字ずつ表示させ、入力したキーと一致したら次の文字を表示させるといった流れを作ります。

今回はメインクラスである『typing_applet』クラスとタイプさせる文字列を管理する『DispKey』クラスの二つのクラスを用意しました。

ソースファイルは下記からダウンロードできます。
タイピングゲームサンプルコード

それではソースコードの主要部分を解説します。

『DispKey』というクラスを作成しています。
class DispKey{
private String question; //タイピング問題文字列
private int charNumMax; //タイピング問題文字列の文字列長
DispKey(){
question = "XYCOKAOKFELAOWQCBN";
charNumMax = question.length();
}

…省略
}
コンストラクタ内で"タイピング問題文字列"を生成しています。
タイピングの問題は、"タイピング問題文字列"から一文字ずつ切り取って順番に出題していきます。


    /*正解・不正解判定*/
public int compareToInpKey(int inpKeyCode, int num){
int ret;
int upperKeyCode = 0;

ret = 0;

if(inpKeyCode >= 65 && inpKeyCode <= 90){
upperKeyCode = inpKeyCode;
}else if(inpKeyCode >= 97 && inpKeyCode <= 122){
upperKeyCode = inpKeyCode - 32; //アルファベットを大文字に変換
}else{
ret = 2;
}

if(ret != 2){
/*正解・不正解判定*/
if(upperKeyCode == this.getActiveCharCode(num)){
ret = 0;
}else{
ret = 1;
}
}

/*戻り値 0:正解
 1:不正解
 2:解答対象外 */
return ret;
}
入力された文字と問題番号に対応する文字が一致しているかを判定するメソッドです。
引数で文字コードと問題番号を受け取ります。
アルファベットが入力された場合だけ正解・不正解の判定を行っています。
アルファベットが小文字で入力された場合、大文字に変換してから判定にかけます。
それ以外の文字が入力された場合、"解答対象外"として判定処理を行いません。

※文字コード
 A:60〜Z:90  a:97〜z:122


ここまでのゲームサンプルでは表示された文字を入力するだけであり、あまりゲーム性がありません。
次回、問題を表示してから入力するまでにかかった時間を計測する機能を追加し、ゲーム性を高めていきます。

トラックバック:0Edit
Copyright © Javaから楽しく学ぶ!ゲームプログラミング専門学校 All Rights Reserved.
当サイトのテキストや画像等すべての転載転用・商用販売を固く禁じます