From cb3a3ab5dde2a86fdc216a8cbfd01f7ed54e9a27 Mon Sep 17 00:00:00 2001 From: makuke1234 Date: Sun, 2 Jan 2022 01:42:43 +0200 Subject: [PATCH] Smoother paddle operation --- README.md | 4 ++-- src/logic.c | 22 ++++++++++++++++++++++ src/resource.rc | 8 ++++---- src/window.c | 23 ----------------------- 4 files changed, 28 insertions(+), 29 deletions(-) diff --git a/README.md b/README.md index dcfa590..ebaa767 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # PongD2D -![Release version](https://img.shields.io/badge/release-v1.0.0-green.svg) +![Release version](https://img.shields.io/badge/release-v1.0.1-green.svg) ![C version](https://img.shields.io/badge/version-C20-blue.svg) ![C++ version](https://img.shields.io/badge/version-C++20-blue.svg) @@ -9,7 +9,7 @@ A pong fork written in C utilising Direct2D API (similar to my other project [Sn # Obtaining -Windows binaries can be downloaded [here](https://github.com/makuke1234/PongD2D/releases/tag/Release_1.0.0). +Windows binaries can be downloaded [here](https://github.com/makuke1234/PongD2D/releases/tag/Release_1.0.1). # Controls diff --git a/src/logic.c b/src/logic.c index e1c90e7..956e1db 100644 --- a/src/logic.c +++ b/src/logic.c @@ -39,6 +39,28 @@ DWORD WINAPI PongLogic_thread(LPVOID param) { case GameMode_normal: { + // Left pad up + if (GetAsyncKeyState(L'W') & 0x8000) + { + logic->scoring.relLeftPad = clamp(logic->scoring.relLeftPad - 10.0f, -PONG_WALL_MAX, PONG_WALL_MAX); + } + // Left pad down + else if (GetAsyncKeyState('S') & 0x8000) + { + logic->scoring.relLeftPad = clamp(logic->scoring.relLeftPad + 10.0f, -PONG_WALL_MAX, PONG_WALL_MAX); + } + // Right pad up + if (GetAsyncKeyState(VK_UP) & 0x8000) + { + logic->scoring.relRightPad = clamp(logic->scoring.relRightPad - 10.0f, -PONG_WALL_MAX, PONG_WALL_MAX); + } + // Right pad down + else if (GetAsyncKeyState(VK_DOWN) & 0x8000) + { + logic->scoring.relRightPad = clamp(logic->scoring.relRightPad + 10.0f, -PONG_WALL_MAX, PONG_WALL_MAX); + } + + logic->scoring.time += delta; // Create left & right pad geometries, ball geometry diff --git a/src/resource.rc b/src/resource.rc index 84ce9ff..f532ab8 100644 --- a/src/resource.rc +++ b/src/resource.rc @@ -12,8 +12,8 @@ IDI_APPLICATION ICON "assets/icon.ico" // Version info #include VS_VERSION_INFO VERSIONINFO -FILEVERSION 1,0,0 -PRODUCTVERSION 1,0,0 +FILEVERSION 1,0,1 +PRODUCTVERSION 1,0,1 FILEFLAGSMASK VS_FFI_FILEFLAGSMASK #ifdef _DEBUG FILEFLAGS VS_FF_DEBUG | VS_FF_PRERELEASE @@ -30,12 +30,12 @@ BEGIN BEGIN VALUE "CompanyName", "Maku Maku" VALUE "FileDescription", "A version of Pong written in C and using Direct2D" - VALUE "FileVersion", "1.0.0" + VALUE "FileVersion", "1.0.1" VALUE "InternalName", "Win32App" VALUE "LegalCopyright", "\xA92021 Maku Maku" VALUE "OriginalFileName", "PongD2D.exe" VALUE "ProductName", "PongD2D" - VALUE "ProductVersion", "1.0.0" + VALUE "ProductVersion", "1.0.1" END END BLOCK "VarFileInfo" diff --git a/src/window.c b/src/window.c index 3b77d23..4d09913 100644 --- a/src/window.c +++ b/src/window.c @@ -831,29 +831,6 @@ void PongWnd_onKeyPress(PongWnd_t * restrict pong, WPARAM wp, LPARAM lp) } break; } - - if (pong->logic.scoring.notPaused) - { - switch (wp) - { - // Left pad up - case L'W': - pong->logic.scoring.relLeftPad = clamp(pong->logic.scoring.relLeftPad - 10.0f, -PONG_WALL_MAX, PONG_WALL_MAX); - break; - // Left pad down - case L'S': - pong->logic.scoring.relLeftPad = clamp(pong->logic.scoring.relLeftPad + 10.0f, -PONG_WALL_MAX, PONG_WALL_MAX); - break; - // Right pad up - case VK_UP: - pong->logic.scoring.relRightPad = clamp(pong->logic.scoring.relRightPad - 10.0f, -PONG_WALL_MAX, PONG_WALL_MAX); - break; - // Right pad down - case VK_DOWN: - pong->logic.scoring.relRightPad = clamp(pong->logic.scoring.relRightPad + 10.0f, -PONG_WALL_MAX, PONG_WALL_MAX); - break; - } - } } void PongWnd_onKeyRelease(PongWnd_t * restrict pong, WPARAM wp, LPARAM lp) {