From e4f531639bcc1f1a84d749815ad0f7293b77419a Mon Sep 17 00:00:00 2001 From: "jean.chalard" Date: Fri, 21 Nov 2008 15:42:35 +0000 Subject: [PATCH] J : * Next try --- JGE/src/winmain.cpp | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/JGE/src/winmain.cpp b/JGE/src/winmain.cpp index 8e7dc16db..90e309256 100644 --- a/JGE/src/winmain.cpp +++ b/JGE/src/winmain.cpp @@ -586,15 +586,18 @@ LRESULT CALLBACK WndProc( HWND hWnd, // Handle For This Window case WM_KEYDOWN: // Update Keyboard Buffers For Keys Pressed if ((wParam >= 0) && (wParam <= 255)) // Is Key (wParam) In A Valid Range? { - g_keys[wParam] = TRUE; // Set The Selected Key (wParam) To True - g_holds[wParam] = TRUE; - for (signed int i = sizeof(gWinKeyCodes)/sizeof(gWinKeyCodes[0]) - 1; i >= 0; --i) - if (gWinKeyCodes[i] == wParam) - if (false == gThisFrame[i]) - { - gThisFrame[i] = true; - gKeyBuffer.push(make_pair(gPSPKeyMasks[i], wParam)); - } + g_keys[wParam] = true; // Set The Selected Key (wParam) To True + if (false == g_holds[wParam]) + { + g_holds[wParam] = true; + for (signed int i = sizeof(gWinKeyCodes)/sizeof(gWinKeyCodes[0]) - 1; i >= 0; --i) + if (gWinKeyCodes[i] == wParam) + if (false == gThisFrame[i]) + { + gThisFrame[i] = true; + gKeyBuffer.push(make_pair(gPSPKeyMasks[i], wParam)); + } + } return 0; } break; // Break