キー入力
※最新版のjarファイル: basic.jar を利用のこと。
リアルタイムゲームには、なんらかの方法で、ユーザの入力
(ジョイスティック、マウスやキーボード)をリアルタイムに獲得する必要がある。
ここでは、BasicGraphicsクラスを利用し、キーボード入力をリアルタイムに取得する方法を説明する。
BasicGraphics g = new BasicGraphics();
char c = g.inkey();
inkey()メソッド
現在押されているキーの取得。
前回inkey()が呼ばれてから、 今回inkey()が呼ばれるまでの間に最後に押されたキーを返す。
初回の呼び出しの場合は、 画面生成時から今回inkey()が呼ばれるまでの間に最後に押されたキーを返す。
何も押されていない場合は、(char)0 を返す。
キーボード入力を画面に表示するサンプルプログラム
import jp.ac.tuis.basic.*;
public class Type{
public static void main(String[] args){
BasicGraphics g = new BasicGraphics();
while(true){
char key = g.inkey();
if(key != 0){
g.print(key);
}
if(key == 'Q'){
break;
}
}
System.exit(0);
}
}
大文字'Q'を入力すると、終了する。
課題 1
BasicGraphics.inkey()メソッドを利用して、キー入力に応じて、
画面に文字(または文字で描いた絵)を任意に上下左右にアニメーションを
行うプログラムを作成せよ。
ヒント:
キー入力の結果に応じて、locate()で指定する座標を特定の方向に変更し、
画面に文字を表示させることによって、簡単にプレイヤーの思いのままに
動くアニメーションを実現できる。