static void IN_init_kb(void);
static void IN_init_mouse(void);
-cvar_t m_filter = {CVAR_SAVE, "m_filter","0"};
-
static void keyhandler(int scancode, int state)
{
int sc;
char *mousedev;
int mouserate = MOUSE_DEFAULTSAMPLERATE;
- Cvar_RegisterVariable (&m_filter);
-
mouse_buttons = 3;
mtype = vga_getmousetype();
void IN_Move(usercmd_t *cmd)
{
- int mouselook = (in_mlook.state & 1) || freelook.integer;
if (!UseMouse)
return;
;
if (key_dest != key_game)
- {
ui_mouseupdaterelative(uimx, uimy);
- uimx = uimy = 0;
- return;
- }
- uimx = uimy = 0;
-
- if (m_filter.integer)
- {
- mouse_x = (mx + old_mouse_x) * 0.5;
- mouse_y = (my + old_mouse_y) * 0.5;
- }
else
- {
- mouse_x = mx;
- mouse_y = my;
- }
- old_mouse_x = mx;
- old_mouse_y = my;
- /* Clear for next update */
- mx = my = 0;
-
- mouse_x *= sensitivity.value;
- mouse_y *= sensitivity.value;
-
- /* Add mouse X/Y movement to cmd */
- if ( (in_strafe.state & 1) || (lookstrafe.integer && mouselook))
- cmd->sidemove += m_side.value * mouse_x;
- else
- cl.viewangles[YAW] -= m_yaw.value * mouse_x;
-
- if (mouselook)
- V_StopPitchDrift();
-
- // LordHavoc: changed limits on pitch from -70 to 80, to -90 to 90
- if (mouselook && !(in_strafe.state & 1))
- {
- cl.viewangles[PITCH] += m_pitch.value * mouse_y;
- if (cl.viewangles[PITCH] > 90)
- cl.viewangles[PITCH] = 90;
- if (cl.viewangles[PITCH] < -90)
- cl.viewangles[PITCH] = -90;
- }
- else
- {
- if ((in_strafe.state & 1) && noclip_anglehack)
- cmd->upmove -= m_forward.value * mouse_y;
- else
- cmd->forwardmove -= m_forward.value * mouse_y;
- }
+ IN_Mouse(cmd, mx, my);
+ mx = 0;
+ my = 0;
+ uimx = 0;
+ uimy = 0;
}
void IN_HandlePause (qboolean pause)