0

私は2人のプレーヤーのために簡単なポンゲームをしようとしています。

最初のものはAとQ(azertyキーボード)で彼のパッドを制御します。2つ目は、PとMでパッドを制御します。

これがコードです

function handleKeyDown(e) {
    switch (e.keyCode) {
        case KEYCODE_ESC:
            break;
        case KEYCODE_UP:
            p1Bitmap.y = p1Bitmap.y - 10;
            break;
        case KEYCODE_DOWN:
            p1Bitmap.y = p1Bitmap.y + 10;
            break;
        case KEYCODE_A:
            p1Bitmap.y = p1Bitmap.y - 10;
            break;
        case KEYCODE_Q:
            p1Bitmap.y = p1Bitmap.y + 10;
            break;
        case KEYCODE_P:
            p2Bitmap.y = p2Bitmap.y - 10;
            break;
        case KEYCODE_M:
            p2Bitmap.y = p2Bitmap.y + 10;
            break;
    }
}

問題は、プレーヤー1がAを押し、プレーヤー2がMを押すと、最初のプレーヤーのキーが無視されることです。

複数のキーイベントを繰り返すことは可能ですか?(プレーヤー1Aとプレーヤー2MIの例では、これを取得したい:AMMMMMMMMMMMMMMMの代わりにAMAMAMAMAMAMAMAMAMAMAMAMetc)

ちなみに、私はWindows 8アプリ(html / css / js)とCreateJSでこれを行っています。

4

1 に答える 1

3

keyup対応するイベントを検出するまで、動きを続けることができます。先に進み始めてください。keydownまで止まらないでくださいkeyup

keydownまた、 とは異なることに注意してくださいkeypresskeydownキーをどれだけ押し続けても、一度だけ発射されます。 keypress一方、文字が挿入される (または挿入される) たびに発生するため、キーを押している限りイベントが繰り返されます。

于 2012-11-08T15:41:18.550 に答える