diff options
Diffstat (limited to '')
-rw-r--r-- | src/core/ControllerConfig.h | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/src/core/ControllerConfig.h b/src/core/ControllerConfig.h index 82174343..7d0e1073 100644 --- a/src/core/ControllerConfig.h +++ b/src/core/ControllerConfig.h @@ -1,5 +1,9 @@ #pragma once +#if defined RW_D3D9 || defined RWLIBS +#define DIRECTINPUT_VERSION 0x0800 +#include <dinput.h> +#endif // based on x-gtasa @@ -96,6 +100,16 @@ class CControllerState; #define ACTIONNAME_LENGTH 40 +#ifdef RW_GL3 +struct GlfwJoyState { + int8 id; + bool isGamepad; + uint8 numButtons; + uint8* buttons; + bool mappedButtons[17]; +}; +#endif + class CControllerConfigManager { public: @@ -112,11 +126,12 @@ public: }; bool m_bFirstCapture; -#ifdef __DINPUT_INCLUDED__ +#if defined RW_GL3 + GlfwJoyState m_OldState; + GlfwJoyState m_NewState; +#else DIJOYSTATE2 m_OldState; DIJOYSTATE2 m_NewState; -#else - uint32 ___padd[0x110 / 4 * 2]; #endif wchar m_aActionNames[MAX_CONTROLLERACTIONS][ACTIONNAME_LENGTH]; bool m_aButtonStates[MAX_BUTTONS]; @@ -193,6 +208,8 @@ public: void ResetSettingOrder (e_ControllerAction action); }; +#ifndef RW_GL3 VALIDATE_SIZE(CControllerConfigManager, 0x143C); +#endif extern CControllerConfigManager ControlsManager;
\ No newline at end of file |