updated gamepad to use existing name as arary

This commit is contained in:
neilomen 2021-09-12 06:44:52 -04:00
parent 6f17300e3d
commit 09babdf505

View File

@ -456,13 +456,10 @@ typedef struct CoreData {
char currentButtonState[MAX_GAMEPADS][MAX_GAMEPAD_BUTTONS]; // Current gamepad buttons state char currentButtonState[MAX_GAMEPADS][MAX_GAMEPAD_BUTTONS]; // Current gamepad buttons state
char previousButtonState[MAX_GAMEPADS][MAX_GAMEPAD_BUTTONS]; // Previous gamepad buttons state char previousButtonState[MAX_GAMEPADS][MAX_GAMEPAD_BUTTONS]; // Previous gamepad buttons state
float axisState[MAX_GAMEPADS][MAX_GAMEPAD_AXIS]; // Gamepad axis state float axisState[MAX_GAMEPADS][MAX_GAMEPAD_AXIS]; // Gamepad axis state
#if defined(PLATFORM_RPI) || defined(PLATFORM_DRM) #if defined(PLATFORM_RPI) || defined(PLATFORM_DRM) || defined(PLATFORM_WEB)
pthread_t threadId; // Gamepad reading thread id pthread_t threadId; // Gamepad reading thread id
int streamId[MAX_GAMEPADS]; // Gamepad device file descriptor int streamId[MAX_GAMEPADS]; // Gamepad device file descriptor
char name[64]; // Gamepad name holder char name[MAX_GAMEPADS][64]; // Gamepad name holder
#endif
#if defined(PLATFORM_WEB)
char gamepadNames[MAX_GAMEPADS][64];
#endif #endif
} Gamepad; } Gamepad;
} Input; } Input;
@ -3276,11 +3273,11 @@ const char *GetGamepadName(int gamepad)
else return NULL; else return NULL;
#endif #endif
#if defined(PLATFORM_RPI) || defined(PLATFORM_DRM) #if defined(PLATFORM_RPI) || defined(PLATFORM_DRM)
if (CORE.Input.Gamepad.ready[gamepad]) ioctl(CORE.Input.Gamepad.streamId[gamepad], JSIOCGNAME(64), &CORE.Input.Gamepad.name); if (CORE.Input.Gamepad.ready[gamepad]) ioctl(CORE.Input.Gamepad.streamId[gamepad], JSIOCGNAME(64), &CORE.Input.Gamepad.name[gamepad]);
return CORE.Input.Gamepad.name; return CORE.Input.Gamepad.name[gamepad];
#endif #endif
#if defined(PLATFORM_WEB) #if defined(PLATFORM_WEB)
return CORE.Input.Gamepad.gamepadNames[gamepad]; return CORE.Input.Gamepad.name[gamepad];
#endif #endif
return NULL; return NULL;
} }
@ -5410,7 +5407,7 @@ static EM_BOOL EmscriptenGamepadCallback(int eventType, const EmscriptenGamepadE
{ {
CORE.Input.Gamepad.ready[gamepadEvent->index] = true; CORE.Input.Gamepad.ready[gamepadEvent->index] = true;
#if defined(PLATFORM_WEB) #if defined(PLATFORM_WEB)
sprintf(CORE.Input.Gamepad.gamepadNames[gamepadEvent->index],"%s",gamepadEvent->id); sprintf(CORE.Input.Gamepad.name[gamepadEvent->index],"%s",gamepadEvent->id);
#endif #endif
} }
else CORE.Input.Gamepad.ready[gamepadEvent->index] = false; else CORE.Input.Gamepad.ready[gamepadEvent->index] = false;