|
|
@ -23,7 +23,7 @@ |
|
|
|
#include "keydefs.h" |
|
|
|
#include "keydefs.h" |
|
|
|
#include "view.h" |
|
|
|
#include "view.h" |
|
|
|
|
|
|
|
|
|
|
|
#if !_WIN32 |
|
|
|
#if !XASH_WIN32 |
|
|
|
#define USE_SDL2 1 |
|
|
|
#define USE_SDL2 1 |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
@ -114,7 +114,7 @@ static SDLFunction sdlFunctions[] = { |
|
|
|
}; |
|
|
|
}; |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
#include <process.h> |
|
|
|
#include <process.h> |
|
|
|
#else |
|
|
|
#else |
|
|
|
typedef unsigned int DWORD; |
|
|
|
typedef unsigned int DWORD; |
|
|
@ -149,7 +149,7 @@ extern cvar_t *cl_forwardspeed; |
|
|
|
extern cvar_t *cl_pitchspeed; |
|
|
|
extern cvar_t *cl_pitchspeed; |
|
|
|
extern cvar_t *cl_movespeedkey; |
|
|
|
extern cvar_t *cl_movespeedkey; |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
static cvar_t* m_rawinput = NULL; |
|
|
|
static cvar_t* m_rawinput = NULL; |
|
|
|
static double s_flRawInputUpdateTime = 0.0f; |
|
|
|
static double s_flRawInputUpdateTime = 0.0f; |
|
|
|
static bool m_bRawInput = false; |
|
|
|
static bool m_bRawInput = false; |
|
|
@ -157,7 +157,7 @@ static bool m_bMouseThread = false; |
|
|
|
bool isMouseRelative = false; |
|
|
|
bool isMouseRelative = false; |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
#include "progdefs.h" |
|
|
|
#include "progdefs.h" |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
@ -184,7 +184,7 @@ static cvar_t *m_customaccel_max; |
|
|
|
//Mouse move is raised to this power before being scaled by scale factor
|
|
|
|
//Mouse move is raised to this power before being scaled by scale factor
|
|
|
|
static cvar_t *m_customaccel_exponent; |
|
|
|
static cvar_t *m_customaccel_exponent; |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
// if threaded mouse is enabled then the time to sleep between polls
|
|
|
|
// if threaded mouse is enabled then the time to sleep between polls
|
|
|
|
static cvar_t *m_mousethread_sleep; |
|
|
|
static cvar_t *m_mousethread_sleep; |
|
|
|
#endif |
|
|
|
#endif |
|
|
@ -218,7 +218,7 @@ enum _ControlList |
|
|
|
AxisTurn |
|
|
|
AxisTurn |
|
|
|
}; |
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
#if !USE_SDL2 && _WIN32 |
|
|
|
#if !USE_SDL2 && XASH_WIN32 |
|
|
|
DWORD dwAxisFlags[JOY_MAX_AXES] = |
|
|
|
DWORD dwAxisFlags[JOY_MAX_AXES] = |
|
|
|
{ |
|
|
|
{ |
|
|
|
JOY_RETURNX, |
|
|
|
JOY_RETURNX, |
|
|
@ -234,7 +234,7 @@ DWORD dwAxisMap[ JOY_MAX_AXES ]; |
|
|
|
DWORD dwControlMap[ JOY_MAX_AXES ]; |
|
|
|
DWORD dwControlMap[ JOY_MAX_AXES ]; |
|
|
|
#if USE_SDL2 |
|
|
|
#if USE_SDL2 |
|
|
|
int pdwRawValue[ JOY_MAX_AXES ]; |
|
|
|
int pdwRawValue[ JOY_MAX_AXES ]; |
|
|
|
#elif _WIN32 |
|
|
|
#elif XASH_WIN32 |
|
|
|
PDWORD pdwRawValue[ JOY_MAX_AXES ]; |
|
|
|
PDWORD pdwRawValue[ JOY_MAX_AXES ]; |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
DWORD joy_oldbuttonstate, joy_oldpovstate; |
|
|
|
DWORD joy_oldbuttonstate, joy_oldpovstate; |
|
|
@ -244,7 +244,7 @@ DWORD joy_numbuttons; |
|
|
|
|
|
|
|
|
|
|
|
#if USE_SDL2 |
|
|
|
#if USE_SDL2 |
|
|
|
SDL_GameController *s_pJoystick = NULL; |
|
|
|
SDL_GameController *s_pJoystick = NULL; |
|
|
|
#elif _WIN32 |
|
|
|
#elif XASH_WIN32 |
|
|
|
DWORD joy_flags; |
|
|
|
DWORD joy_flags; |
|
|
|
static JOYINFOEX ji; |
|
|
|
static JOYINFOEX ji; |
|
|
|
#endif |
|
|
|
#endif |
|
|
@ -276,7 +276,7 @@ cvar_t *joy_wwhack2; |
|
|
|
|
|
|
|
|
|
|
|
int joy_avail, joy_advancedinit, joy_haspov; |
|
|
|
int joy_avail, joy_advancedinit, joy_haspov; |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
unsigned int s_hMouseThreadId = 0; |
|
|
|
unsigned int s_hMouseThreadId = 0; |
|
|
|
HANDLE s_hMouseThread = 0; |
|
|
|
HANDLE s_hMouseThread = 0; |
|
|
|
HANDLE s_hMouseQuitEvent = 0; |
|
|
|
HANDLE s_hMouseQuitEvent = 0; |
|
|
@ -300,7 +300,7 @@ void Force_CenterView_f (void) |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
|
|
|
|
|
|
|
|
LONG mouseThreadActive = 0; |
|
|
|
LONG mouseThreadActive = 0; |
|
|
|
LONG mouseThreadCenterX = 0; |
|
|
|
LONG mouseThreadCenterX = 0; |
|
|
@ -382,7 +382,7 @@ void IN_SetMouseMode(bool enable) |
|
|
|
|
|
|
|
|
|
|
|
if(enable) |
|
|
|
if(enable) |
|
|
|
{ |
|
|
|
{ |
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
if (mouseparmsvalid) |
|
|
|
if (mouseparmsvalid) |
|
|
|
restore_spi = SystemParametersInfo (SPI_SETMOUSE, 0, newmouseparms, 0); |
|
|
|
restore_spi = SystemParametersInfo (SPI_SETMOUSE, 0, newmouseparms, 0); |
|
|
|
|
|
|
|
|
|
|
@ -402,7 +402,7 @@ void IN_SetMouseMode(bool enable) |
|
|
|
} |
|
|
|
} |
|
|
|
else |
|
|
|
else |
|
|
|
{ |
|
|
|
{ |
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
if(isMouseRelative) |
|
|
|
if(isMouseRelative) |
|
|
|
{ |
|
|
|
{ |
|
|
|
#if USE_SDL2 |
|
|
|
#if USE_SDL2 |
|
|
@ -423,7 +423,7 @@ void IN_SetMouseMode(bool enable) |
|
|
|
|
|
|
|
|
|
|
|
void IN_SetVisibleMouse(bool visible) |
|
|
|
void IN_SetVisibleMouse(bool visible) |
|
|
|
{ |
|
|
|
{ |
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
bool lockEntered = MouseThread_ActiveLock_Enter(); |
|
|
|
bool lockEntered = MouseThread_ActiveLock_Enter(); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
@ -431,7 +431,7 @@ void IN_SetVisibleMouse(bool visible) |
|
|
|
|
|
|
|
|
|
|
|
IN_SetMouseMode(!visible); |
|
|
|
IN_SetMouseMode(!visible); |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
UpdateMouseThreadActive(); |
|
|
|
UpdateMouseThreadActive(); |
|
|
|
if(lockEntered) MouseThread_ActiveLock_Exit(); |
|
|
|
if(lockEntered) MouseThread_ActiveLock_Exit(); |
|
|
|
#endif |
|
|
|
#endif |
|
|
@ -448,7 +448,7 @@ void GoldSourceInput::IN_ActivateMouse (void) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (mouseinitialized) |
|
|
|
if (mouseinitialized) |
|
|
|
{ |
|
|
|
{ |
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
bool lockEntered = MouseThread_ActiveLock_Enter(); |
|
|
|
bool lockEntered = MouseThread_ActiveLock_Enter(); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
@ -456,7 +456,7 @@ void GoldSourceInput::IN_ActivateMouse (void) |
|
|
|
|
|
|
|
|
|
|
|
mouseactive = 1; |
|
|
|
mouseactive = 1; |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
UpdateMouseThreadActive(); |
|
|
|
UpdateMouseThreadActive(); |
|
|
|
if(lockEntered) MouseThread_ActiveLock_Exit(); |
|
|
|
if(lockEntered) MouseThread_ActiveLock_Exit(); |
|
|
|
#endif |
|
|
|
#endif |
|
|
@ -476,7 +476,7 @@ void GoldSourceInput::IN_DeactivateMouse (void) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (mouseinitialized) |
|
|
|
if (mouseinitialized) |
|
|
|
{ |
|
|
|
{ |
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
bool lockEntered = MouseThread_ActiveLock_Enter(); |
|
|
|
bool lockEntered = MouseThread_ActiveLock_Enter(); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
@ -484,7 +484,7 @@ void GoldSourceInput::IN_DeactivateMouse (void) |
|
|
|
|
|
|
|
|
|
|
|
mouseactive = 0; |
|
|
|
mouseactive = 0; |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
UpdateMouseThreadActive(); |
|
|
|
UpdateMouseThreadActive(); |
|
|
|
if(lockEntered) MouseThread_ActiveLock_Exit(); |
|
|
|
if(lockEntered) MouseThread_ActiveLock_Exit(); |
|
|
|
#endif |
|
|
|
#endif |
|
|
@ -502,7 +502,7 @@ void GoldSourceInput::IN_StartupMouse (void) |
|
|
|
return; |
|
|
|
return; |
|
|
|
|
|
|
|
|
|
|
|
mouseinitialized = 1; |
|
|
|
mouseinitialized = 1; |
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
mouseparmsvalid = SystemParametersInfo (SPI_GETMOUSE, 0, originalmouseparms, 0); |
|
|
|
mouseparmsvalid = SystemParametersInfo (SPI_GETMOUSE, 0, originalmouseparms, 0); |
|
|
|
|
|
|
|
|
|
|
|
if (mouseparmsvalid) |
|
|
|
if (mouseparmsvalid) |
|
|
@ -537,7 +537,7 @@ void GoldSourceInput::IN_Shutdown (void) |
|
|
|
{ |
|
|
|
{ |
|
|
|
IN_DeactivateMouse (); |
|
|
|
IN_DeactivateMouse (); |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
if ( s_hMouseQuitEvent ) |
|
|
|
if ( s_hMouseQuitEvent ) |
|
|
|
{ |
|
|
|
{ |
|
|
|
SetEvent( s_hMouseQuitEvent ); |
|
|
|
SetEvent( s_hMouseQuitEvent ); |
|
|
@ -597,7 +597,7 @@ FIXME: Call through to engine? |
|
|
|
void IN_ResetMouse( void ) |
|
|
|
void IN_ResetMouse( void ) |
|
|
|
{ |
|
|
|
{ |
|
|
|
// no work to do in SDL
|
|
|
|
// no work to do in SDL
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
// reset only if mouse is active and not in visible mode:
|
|
|
|
// reset only if mouse is active and not in visible mode:
|
|
|
|
if(mouseactive && !iVisibleMouse && gEngfuncs.GetWindowCenterX && gEngfuncs.GetWindowCenterY) |
|
|
|
if(mouseactive && !iVisibleMouse && gEngfuncs.GetWindowCenterX && gEngfuncs.GetWindowCenterY) |
|
|
|
{ |
|
|
|
{ |
|
|
@ -712,7 +712,7 @@ void GoldSourceInput::IN_GetMouseDelta( int *pOutX, int *pOutY) |
|
|
|
if(active) |
|
|
|
if(active) |
|
|
|
{ |
|
|
|
{ |
|
|
|
int deltaX, deltaY; |
|
|
|
int deltaX, deltaY; |
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
if ( !m_bRawInput ) |
|
|
|
if ( !m_bRawInput ) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if ( m_bMouseThread ) |
|
|
|
if ( m_bMouseThread ) |
|
|
@ -746,7 +746,7 @@ void GoldSourceInput::IN_GetMouseDelta( int *pOutX, int *pOutY) |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
if ( !m_bRawInput ) |
|
|
|
if ( !m_bRawInput ) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if ( m_bMouseThread ) |
|
|
|
if ( m_bMouseThread ) |
|
|
@ -771,7 +771,7 @@ void GoldSourceInput::IN_GetMouseDelta( int *pOutX, int *pOutY) |
|
|
|
my_accum = 0; |
|
|
|
my_accum = 0; |
|
|
|
|
|
|
|
|
|
|
|
// reset mouse position if required, so there is room to move:
|
|
|
|
// reset mouse position if required, so there is room to move:
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
// do not reset if mousethread would do it:
|
|
|
|
// do not reset if mousethread would do it:
|
|
|
|
if ( m_bRawInput || !m_bMouseThread ) |
|
|
|
if ( m_bRawInput || !m_bMouseThread ) |
|
|
|
#else |
|
|
|
#else |
|
|
@ -779,7 +779,7 @@ void GoldSourceInput::IN_GetMouseDelta( int *pOutX, int *pOutY) |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
IN_ResetMouse(); |
|
|
|
IN_ResetMouse(); |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
// update m_bRawInput occasionally:
|
|
|
|
// update m_bRawInput occasionally:
|
|
|
|
const float currentTime = gEngfuncs.GetClientTime(); |
|
|
|
const float currentTime = gEngfuncs.GetClientTime(); |
|
|
|
if ( currentTime - s_flRawInputUpdateTime > 1.0f || s_flRawInputUpdateTime == 0.0f ) |
|
|
|
if ( currentTime - s_flRawInputUpdateTime > 1.0f || s_flRawInputUpdateTime == 0.0f ) |
|
|
@ -929,7 +929,7 @@ void GoldSourceInput::IN_Accumulate (void) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (mouseactive) |
|
|
|
if (mouseactive) |
|
|
|
{ |
|
|
|
{ |
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
if ( !m_bRawInput ) |
|
|
|
if ( !m_bRawInput ) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if ( !m_bMouseThread ) |
|
|
|
if ( !m_bMouseThread ) |
|
|
@ -957,7 +957,7 @@ void GoldSourceInput::IN_Accumulate (void) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// force the mouse to the center, so there's room to move
|
|
|
|
// force the mouse to the center, so there's room to move
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
// do not reset if mousethread would do it:
|
|
|
|
// do not reset if mousethread would do it:
|
|
|
|
if ( m_bRawInput || !m_bMouseThread ) |
|
|
|
if ( m_bRawInput || !m_bMouseThread ) |
|
|
|
#else |
|
|
|
#else |
|
|
@ -1030,7 +1030,7 @@ void IN_StartupJoystick (void) |
|
|
|
{ |
|
|
|
{ |
|
|
|
gEngfuncs.Con_DPrintf ("joystick not found -- driver not present\n\n"); |
|
|
|
gEngfuncs.Con_DPrintf ("joystick not found -- driver not present\n\n"); |
|
|
|
} |
|
|
|
} |
|
|
|
#elif _WIN32 |
|
|
|
#elif XASH_WIN32 |
|
|
|
int numdevs; |
|
|
|
int numdevs; |
|
|
|
JOYCAPS jc; |
|
|
|
JOYCAPS jc; |
|
|
|
MMRESULT mmr; |
|
|
|
MMRESULT mmr; |
|
|
@ -1102,7 +1102,7 @@ int RawValuePointer (int axis) |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
#elif _WIN32 |
|
|
|
#elif XASH_WIN32 |
|
|
|
PDWORD RawValuePointer (int axis) |
|
|
|
PDWORD RawValuePointer (int axis) |
|
|
|
{ |
|
|
|
{ |
|
|
|
switch (axis) |
|
|
|
switch (axis) |
|
|
@ -1185,7 +1185,7 @@ void Joy_AdvancedUpdate_f (void) |
|
|
|
dwControlMap[JOY_AXIS_V] = dwTemp & JOY_RELATIVE_AXIS; |
|
|
|
dwControlMap[JOY_AXIS_V] = dwTemp & JOY_RELATIVE_AXIS; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
#if !USE_SDL2 && _WIN32 |
|
|
|
#if !USE_SDL2 && XASH_WIN32 |
|
|
|
// compute the axes to collect from DirectInput
|
|
|
|
// compute the axes to collect from DirectInput
|
|
|
|
joy_flags = JOY_RETURNCENTERED | JOY_RETURNBUTTONS | JOY_RETURNPOV; |
|
|
|
joy_flags = JOY_RETURNCENTERED | JOY_RETURNBUTTONS | JOY_RETURNPOV; |
|
|
|
for (i = 0; i < JOY_MAX_AXES; i++) |
|
|
|
for (i = 0; i < JOY_MAX_AXES; i++) |
|
|
@ -1231,7 +1231,7 @@ void GoldSourceInput::IN_Commands (void) |
|
|
|
{ |
|
|
|
{ |
|
|
|
pdwRawValue[i] = RawValuePointer(i); |
|
|
|
pdwRawValue[i] = RawValuePointer(i); |
|
|
|
} |
|
|
|
} |
|
|
|
#elif _WIN32 |
|
|
|
#elif XASH_WIN32 |
|
|
|
buttonstate = ji.dwButtons; |
|
|
|
buttonstate = ji.dwButtons; |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
@ -1257,7 +1257,7 @@ void GoldSourceInput::IN_Commands (void) |
|
|
|
// this avoids any potential problems related to moving from one
|
|
|
|
// this avoids any potential problems related to moving from one
|
|
|
|
// direction to another without going through the center position
|
|
|
|
// direction to another without going through the center position
|
|
|
|
povstate = 0; |
|
|
|
povstate = 0; |
|
|
|
#if !USE_SDL2 && _WIN32 |
|
|
|
#if !USE_SDL2 && XASH_WIN32 |
|
|
|
if(ji.dwPOV != JOY_POVCENTERED) |
|
|
|
if(ji.dwPOV != JOY_POVCENTERED) |
|
|
|
{ |
|
|
|
{ |
|
|
|
if (ji.dwPOV == JOY_POVFORWARD) |
|
|
|
if (ji.dwPOV == JOY_POVFORWARD) |
|
|
@ -1298,7 +1298,7 @@ int IN_ReadJoystick (void) |
|
|
|
#if USE_SDL2 |
|
|
|
#if USE_SDL2 |
|
|
|
safe_pfnSDL_JoystickUpdate(); |
|
|
|
safe_pfnSDL_JoystickUpdate(); |
|
|
|
return 1; |
|
|
|
return 1; |
|
|
|
#elif _WIN32 |
|
|
|
#elif XASH_WIN32 |
|
|
|
memset (&ji, 0, sizeof(ji)); |
|
|
|
memset (&ji, 0, sizeof(ji)); |
|
|
|
ji.dwSize = sizeof(ji); |
|
|
|
ji.dwSize = sizeof(ji); |
|
|
|
ji.dwFlags = joy_flags; |
|
|
|
ji.dwFlags = joy_flags; |
|
|
@ -1377,7 +1377,7 @@ void IN_JoyMove ( float frametime, usercmd_t *cmd ) |
|
|
|
// get the floating point zero-centered, potentially-inverted data for the current axis
|
|
|
|
// get the floating point zero-centered, potentially-inverted data for the current axis
|
|
|
|
#if USE_SDL2 |
|
|
|
#if USE_SDL2 |
|
|
|
fAxisValue = (float)pdwRawValue[i]; |
|
|
|
fAxisValue = (float)pdwRawValue[i]; |
|
|
|
#elif _WIN32 |
|
|
|
#elif XASH_WIN32 |
|
|
|
fAxisValue = (float) *pdwRawValue[i]; |
|
|
|
fAxisValue = (float) *pdwRawValue[i]; |
|
|
|
fAxisValue -= 32768.0; |
|
|
|
fAxisValue -= 32768.0; |
|
|
|
#endif |
|
|
|
#endif |
|
|
@ -1571,7 +1571,7 @@ void GoldSourceInput::IN_Init (void) |
|
|
|
m_customaccel_max = gEngfuncs.pfnRegisterVariable ( "m_customaccel_max", "0", FCVAR_ARCHIVE ); |
|
|
|
m_customaccel_max = gEngfuncs.pfnRegisterVariable ( "m_customaccel_max", "0", FCVAR_ARCHIVE ); |
|
|
|
m_customaccel_exponent = gEngfuncs.pfnRegisterVariable ( "m_customaccel_exponent", "1", FCVAR_ARCHIVE ); |
|
|
|
m_customaccel_exponent = gEngfuncs.pfnRegisterVariable ( "m_customaccel_exponent", "1", FCVAR_ARCHIVE ); |
|
|
|
|
|
|
|
|
|
|
|
#if _WIN32 |
|
|
|
#if XASH_WIN32 |
|
|
|
m_rawinput = gEngfuncs.pfnGetCvarPointer("m_rawinput"); |
|
|
|
m_rawinput = gEngfuncs.pfnGetCvarPointer("m_rawinput"); |
|
|
|
m_bRawInput = m_rawinput && m_rawinput->value != 0; |
|
|
|
m_bRawInput = m_rawinput && m_rawinput->value != 0; |
|
|
|
m_bMouseThread = gEngfuncs.CheckParm ("-mousethread", NULL ) != NULL; |
|
|
|
m_bMouseThread = gEngfuncs.CheckParm ("-mousethread", NULL ) != NULL; |
|
|
@ -1603,7 +1603,7 @@ void GoldSourceInput::IN_Init (void) |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
#if USE_SDL2 |
|
|
|
#if USE_SDL2 |
|
|
|
#if __APPLE__ |
|
|
|
#if XASH_APPLE |
|
|
|
#define SDL2_FULL_LIBNAME "libsdl2-2.0.0.dylib" |
|
|
|
#define SDL2_FULL_LIBNAME "libsdl2-2.0.0.dylib" |
|
|
|
#else |
|
|
|
#else |
|
|
|
#define SDL2_FULL_LIBNAME "libSDL2-2.0.so.0" |
|
|
|
#define SDL2_FULL_LIBNAME "libSDL2-2.0.so.0" |
|
|
|