Fixed issue where GetAnalogActionData magnitude of joystick was always maximum.

This commit is contained in:
Mr_Goldberg 2019-09-12 07:21:11 -04:00
parent 663728edca
commit 09704ae243
No known key found for this signature in database
GPG key ID: 8597D87419DEF278
2 changed files with 11 additions and 0 deletions

View file

@ -495,9 +495,16 @@ ControllerAnalogActionData_t GetAnalogActionData( ControllerHandle_t controllerH
if (a >= 10) {
int joystick_id = a - 10;
GamepadStickNormXY((GAMEPAD_DEVICE)(controllerHandle - 1), (GAMEPAD_STICK) joystick_id, &data.x, &data.y);
float length = GamepadStickLength((GAMEPAD_DEVICE)(controllerHandle - 1), (GAMEPAD_STICK) joystick_id);
data.x = data.x * length;
data.y = data.y * length;
} else {
data.x = GamepadTriggerLength((GAMEPAD_DEVICE)(controllerHandle - 1), (GAMEPAD_TRIGGER) a);
}
if (data.x || data.y) {
break;
}
}
return data;