Fix digital triggers

This commit is contained in:
Iwan Timmer
2017-06-19 21:56:22 +02:00
parent 04200f24c7
commit 0e4820e3a8
+2 -4
View File
@@ -256,21 +256,19 @@ static bool evdev_handle_event(struct input_event *ev, struct input_device *dev)
} else if (gamepadCode != 0) { } else if (gamepadCode != 0) {
gamepadModified = true; gamepadModified = true;
if (gamepadCode != 0) {
if (ev->value) if (ev->value)
dev->buttonFlags |= gamepadCode; dev->buttonFlags |= gamepadCode;
else else
dev->buttonFlags &= ~gamepadCode; dev->buttonFlags &= ~gamepadCode;
} else if (index == dev->map->btn_lefttrigger) } else if (index == dev->map->btn_lefttrigger)
dev->leftTrigger = ev->value?UCHAR_MAX:0; dev->leftTrigger = ev->value ? UCHAR_MAX : 0;
else if (index == dev->map->btn_righttrigger) else if (index == dev->map->btn_righttrigger)
dev->rightTrigger = ev->value?UCHAR_MAX:0; dev->rightTrigger = ev->value ? UCHAR_MAX : 0;
else { else {
fprintf(stderr, "Unmapped button: %d\n", ev->code); fprintf(stderr, "Unmapped button: %d\n", ev->code);
gamepadModified = false; gamepadModified = false;
} }
} }
}
break; break;
case EV_REL: case EV_REL:
switch (ev->code) { switch (ev->code) {