連鎖ゲーム(JavaApplet)の更新作業.操作性を良くするために,斜め移動に対応した.JDK1.1.4ではキー同時押しの判定はできないよなぁ,と悶々としながらネットを検索していたところ,

見事に実現しているサンプルが見つかった.

KeyListener#keyPressed()を使うのは当然ですが,さらにkeyReleased()を使ってキーを離したタイミングを検出することで,

  • keyPressedされたけどkeyReleasedされていないキー = 現在押下されているキー

という判断の仕方をするというものだった.

内部的には,使われるキー全てに対応する押下中フラグを保持することになるが,とにかくこの方法で成功した.素晴らしい.

あとついでに,ちぎり時間も導入したので,多少はリアルに近づいただろうか.


© 2024 KMIソフトウェア