mirror of
https://github.com/fabiangreffrath/woof.git
synced 2025-09-26 14:33:46 -04:00
Apply deadzone to gamepad for strict mode check (#1550)
This commit is contained in:
parent
5e7ba29cc8
commit
4d3c380f0d
21
src/g_game.c
21
src/g_game.c
@ -1052,14 +1052,31 @@ static boolean G_StrictModeSkipEvent(event_t *ev)
|
|||||||
|
|
||||||
case ev_joyb_down:
|
case ev_joyb_down:
|
||||||
case ev_joyb_up:
|
case ev_joyb_up:
|
||||||
case ev_joystick:
|
if (first_event)
|
||||||
if (first_event && (ev->data1 || ev->data2 || ev->data3 || ev->data4))
|
|
||||||
{
|
{
|
||||||
first_event = false;
|
first_event = false;
|
||||||
enable_controller = true;
|
enable_controller = true;
|
||||||
}
|
}
|
||||||
return !enable_controller;
|
return !enable_controller;
|
||||||
|
|
||||||
|
case ev_joystick:
|
||||||
|
if (first_event)
|
||||||
|
{
|
||||||
|
*axes_data[AXIS_LEFTX] = ev->data1;
|
||||||
|
*axes_data[AXIS_LEFTY] = ev->data2;
|
||||||
|
*axes_data[AXIS_RIGHTX] = ev->data3;
|
||||||
|
*axes_data[AXIS_RIGHTY] = ev->data4;
|
||||||
|
I_CalcControllerAxes();
|
||||||
|
if (axes[AXIS_STRAFE] || axes[AXIS_FORWARD] || axes[AXIS_TURN] ||
|
||||||
|
axes[AXIS_LOOK])
|
||||||
|
{
|
||||||
|
first_event = false;
|
||||||
|
enable_controller = true;
|
||||||
|
}
|
||||||
|
return true; // Already "ate" the event above.
|
||||||
|
}
|
||||||
|
return !enable_controller;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user