From 839f2a6d159d1672483a19e998b4d26455c14bc7 Mon Sep 17 00:00:00 2001 From: Eidolon Date: Sat, 25 Mar 2023 22:36:34 -0500 Subject: [PATCH] Add G_ResetAllDeviceRumbles --- src/g_input.c | 16 ++++++++++++++++ src/g_input.h | 1 + 2 files changed, 17 insertions(+) diff --git a/src/g_input.c b/src/g_input.c index cae54dae9..4110df993 100644 --- a/src/g_input.c +++ b/src/g_input.c @@ -357,6 +357,22 @@ void G_PlayerDeviceRumbleTriggers(INT32 player, UINT16 left_strength, UINT16 rig I_GamepadRumbleTriggers(device_id, left_strength, right_strength); } +void G_ResetAllDeviceRumbles(void) +{ + int i; + int devices; + + devices = G_GetNumAvailableGamepads(); + + for (i = 0; i < devices; i++) + { + INT32 device_id = G_GetAvailableGamepadDevice(i); + + I_GamepadRumble(device_id, 0, 0); + I_GamepadRumbleTriggers(device_id, 0, 0); + } +} + static boolean AutomaticControllerReassignmentIsAllowed(INT32 device) { boolean device_is_gamepad = device > 0; diff --git a/src/g_input.h b/src/g_input.h index 388a33f91..6dd262761 100644 --- a/src/g_input.h +++ b/src/g_input.h @@ -161,6 +161,7 @@ void G_SetPlayerGamepadIndicatorToPlayerColor(INT32 player); void G_PlayerDeviceRumble(INT32 player, UINT16 low_strength, UINT16 high_strength); void G_PlayerDeviceRumbleTriggers(INT32 player, UINT16 left_strength, UINT16 right_strength); +void G_ResetAllDeviceRumbles(void); /// Get the gamekeydown array (NUMINPUTS values) for the given device, or NULL if the device id is invalid. INT32* G_GetDeviceGameKeyDownArray(INT32 device);