トップページ > 過去ログ > 記事閲覧
入力バッファのクリアについて・・・
名前:クラウン 日時: 2007/11/21 19:22

はじめまして!クラウンと申します。 実は今、ゲームを作っているのですが・・・・。 プレイヤーの切り替えをキーボードのキー一つだけで(Zキーなど)行いたいのですが、入力バッファがクリアになっていないのか、切り替える前の状態に戻ってしまいます。 ちなみに、「GetHitKeyStateAll();」を使って、入力バッファにキー値を格納しています。 入力バッファなどをクリアにする方法がありましたら教えてください。

Page: 1 |

Re: 入力バッファのクリアについて・・・ ( No.1 )
名前:Will 日時:2007/11/21 21:35

GetHitKeyStateAllは関数がコールされた時点でのキー押下状態を取得する関数です。 よって、キーが押された時にフラグONしてGetHitKeyStateAllがコールされた時にそれが解除される、というような動きを期待されているのでしたら無理です。 よって、一回前の状態を覚えておいて今回状態と比較するという方法が一つの手です。 static char lastBuf[256]; char curBuf[256]; GetHitKeyStateAll( curBuf ) ; if(curBuf[KEY_INPUT_Z] == 1) { if (curBuf[KEY_INPUT_Z] != lastBuf[KEY_INPUT_Z]) { // ここにZキーが押された時の処理を書く } } memcpy(lastBuf, curBuf, 256);
Re: 入力バッファのクリアについて・・・ ( No.2 )
名前:クラウン 日時:2007/11/22 12:22

そうだったんですか。 わかりました。ありがとうございます!

Page: 1 |