From b0c6e79329629a828f9074c96c726cd0fd6fb5ae Mon Sep 17 00:00:00 2001 From: Catherine Reprobate Date: Thu, 28 Sep 2023 22:49:00 -0700 Subject: [PATCH 1/2] hack: cp `inputMouseGetScaledDeltaAbsSens` for ammenu --- port/src/input.c | 14 ++++++++++++++ src/game/activemenutick.c | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/port/src/input.c b/port/src/input.c index 021d0e61f..67bb7f45a 100644 --- a/port/src/input.c +++ b/port/src/input.c @@ -727,6 +727,20 @@ void inputMouseGetScaledDelta(f32 *dx, f32 *dy) if (dy) *dy = mdy; } +void inputMouseGetScaledDeltaAbsSens(f32 *dx, f32 *dy) +{ + f32 mdx, mdy; + if (mouseLocked) { + mdx = abs(mouseSensX) * (f32)mouseDX / 100.0f; + mdy = abs(mouseSensY) * (f32)mouseDY / 100.0f; + } else { + mdx = 0.f; + mdy = 0.f; + } + if (dx) *dx = mdx; + if (dy) *dy = mdy; +} + const char *inputGetContKeyName(u32 ck) { if (ck >= CK_TOTAL_COUNT) { diff --git a/src/game/activemenutick.c b/src/game/activemenutick.c index cd683a014..656c45a77 100644 --- a/src/game/activemenutick.c +++ b/src/game/activemenutick.c @@ -70,7 +70,7 @@ void amTick(void) if (j == 0 && g_Vars.currentplayernum == 0 && inputMouseIsLocked()) { f32 mdx, mdy; struct activemenu *am = &g_AmMenus[g_AmIndex]; - inputMouseGetScaledDelta(&mdx, &mdy); + inputMouseGetScaledDeltaAbsSens(&mdx, &mdy); if (mdx || mdy) { am->mousex += mdx * 4.f; am->mousey += mdy * 4.f; From 940ba8c4c086c60771e8a38ecc50cb4c33bf84a3 Mon Sep 17 00:00:00 2001 From: Catherine Reprobate Date: Fri, 29 Sep 2023 17:29:08 -0700 Subject: [PATCH 2/2] fixup: Use the float abs function --- port/src/input.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/port/src/input.c b/port/src/input.c index 67bb7f45a..3106fc633 100644 --- a/port/src/input.c +++ b/port/src/input.c @@ -731,8 +731,8 @@ void inputMouseGetScaledDeltaAbsSens(f32 *dx, f32 *dy) { f32 mdx, mdy; if (mouseLocked) { - mdx = abs(mouseSensX) * (f32)mouseDX / 100.0f; - mdy = abs(mouseSensY) * (f32)mouseDY / 100.0f; + mdx = fabsf(mouseSensX) * (f32)mouseDX / 100.0f; + mdy = fabsf(mouseSensY) * (f32)mouseDY / 100.0f; } else { mdx = 0.f; mdy = 0.f;