0

(ボタンとして) 長方形を作成しようとした後、マウスの位置を使用してマウスがボタンにあるかどうかを確認し、ゲームを終了しました。

これが私が試したものです

if(Mouse.isButtonDown(0)) {
    downFlag = true;
}

if ((posX>120 && posX<420)&&(posY>120 && posY<180)) {
    if (!Mouse.isButtonDown(0) && downFlag) {
        gc.exit();
    }
}

しかし、ボタンの外側でマウスをクリックしてからマウスをボタンに移動すると、マウスがボタン自体をクリックしたため、マウスはまだ登録されています。
マウスが離された時間を確認するためにタイマーを追加する必要がありますか? downFlagマウスがクリックされてから数ミリ秒後に を false にしますか?

4

1 に答える 1

0

境界チェック内でを使用Inputすることを検討してください。isMousePressed(Input.MOUSE_LEFT_BUTTON)その感触が気に入らない場合は、現在の方法を使用しますが、最初にマウス ダウンをチェックする境界チェックを追加します。ただし、複数のボタンがある場合は、多くの簿記が必要です。

于 2013-10-17T15:45:49.620 に答える