mirror of
https://github.com/XProger/OpenLara.git
synced 2025-08-20 11:51:36 +02:00
#15 fix Raspberry Pi build
This commit is contained in:
@@ -310,28 +310,34 @@ InputKey codeToInputKey(int code) {
|
|||||||
case KEY_X : return ikX;
|
case KEY_X : return ikX;
|
||||||
case KEY_Y : return ikY;
|
case KEY_Y : return ikY;
|
||||||
case KEY_Z : return ikZ;
|
case KEY_Z : return ikZ;
|
||||||
|
case KEY_HOMEPAGE : return ikEscape;
|
||||||
// mouse
|
// mouse
|
||||||
case BTN_LEFT : return ikMouseL;
|
case BTN_LEFT : return ikMouseL;
|
||||||
case BTN_RIGHT : return ikMouseR;
|
case BTN_RIGHT : return ikMouseR;
|
||||||
case BTN_MIDDLE : return ikMouseM;
|
case BTN_MIDDLE : return ikMouseM;
|
||||||
// gamepad
|
|
||||||
case KEY_HOMEPAGE : return ikEscape;
|
|
||||||
case BTN_A : return ikJoyA;
|
|
||||||
case BTN_B : return ikJoyB;
|
|
||||||
case BTN_X : return ikJoyX;
|
|
||||||
case BTN_Y : return ikJoyY;
|
|
||||||
case BTN_TL : return ikJoyLB;
|
|
||||||
case BTN_TR : return ikJoyRB;
|
|
||||||
case BTN_SELECT : return ikJoySelect;
|
|
||||||
case BTN_START : return ikJoyStart;
|
|
||||||
case BTN_THUMBL : return ikJoyL;
|
|
||||||
case BTN_THUMBR : return ikJoyR;
|
|
||||||
case BTN_TL2 : return ikJoyLT;
|
|
||||||
case BTN_TR2 : return ikJoyRT;
|
|
||||||
}
|
}
|
||||||
return ikNone;
|
return ikNone;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
JoyKey codeToJoyKey(int code) {
|
||||||
|
switch (code) {
|
||||||
|
// gamepad
|
||||||
|
case BTN_A : return jkA;
|
||||||
|
case BTN_B : return jkB;
|
||||||
|
case BTN_X : return jkX;
|
||||||
|
case BTN_Y : return jkY;
|
||||||
|
case BTN_TL : return jkLB;
|
||||||
|
case BTN_TR : return jkRB;
|
||||||
|
case BTN_SELECT : return jkSelect;
|
||||||
|
case BTN_START : return jkStart;
|
||||||
|
case BTN_THUMBL : return jkL;
|
||||||
|
case BTN_THUMBR : return jkR;
|
||||||
|
case BTN_TL2 : return jkLT;
|
||||||
|
case BTN_TR2 : return jkRT;
|
||||||
|
}
|
||||||
|
return jkNone;
|
||||||
|
}
|
||||||
|
|
||||||
int inputDevIndex(const char *node) {
|
int inputDevIndex(const char *node) {
|
||||||
const char *str = strstr(node, "/event");
|
const char *str = strstr(node, "/event");
|
||||||
if (str)
|
if (str)
|
||||||
@@ -414,9 +420,14 @@ void inputUpdate() {
|
|||||||
switch (e->type) {
|
switch (e->type) {
|
||||||
case EV_KEY : {
|
case EV_KEY : {
|
||||||
InputKey key = codeToInputKey(e->code);
|
InputKey key = codeToInputKey(e->code);
|
||||||
if (key == ikMouseL || key == ikMouseR || key == ikMouseM)
|
if (key != ikNone) {
|
||||||
Input::setPos(key, Input::mouse.pos);
|
if (key == ikMouseL || key == ikMouseR || key == ikMouseM)
|
||||||
Input::setDown(key, e->value != 0);
|
Input::setPos(key, Input::mouse.pos);
|
||||||
|
Input::setDown(key, e->value != 0);
|
||||||
|
} else {
|
||||||
|
JoyKey key = codeToJoyKey(e->code);
|
||||||
|
Input::setJoyDown(0, key, e->value != 0);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case EV_REL : {
|
case EV_REL : {
|
||||||
@@ -440,8 +451,8 @@ void inputUpdate() {
|
|||||||
rb -= sizeof(events[0]);
|
rb -= sizeof(events[0]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Input::setPos(ikJoyL, joyL);
|
Input::setJoyPos(0, jkL, joyL);
|
||||||
Input::setPos(ikJoyR, joyR);
|
Input::setJoyPos(0, jkR, joyR);
|
||||||
// monitoring plug and unplug input devices
|
// monitoring plug and unplug input devices
|
||||||
fd_set fds;
|
fd_set fds;
|
||||||
FD_ZERO(&fds);
|
FD_ZERO(&fds);
|
||||||
|
Reference in New Issue
Block a user