mirror of
https://git.ryujinx.app/kenji-nx/ryujinx.git
synced 2025-12-13 22:37:07 +00:00
Chore: Minor code cleanups (SDL2Gamepad.cs)
This commit is contained in:
parent
e7e89efb3c
commit
ab1eb8168b
1 changed files with 13 additions and 17 deletions
|
|
@ -321,23 +321,7 @@ namespace Ryujinx.Input.SDL2
|
||||||
return (0.0f, 0.0f);
|
return (0.0f, 0.0f);
|
||||||
}
|
}
|
||||||
|
|
||||||
short stickX;
|
(short stickX, short stickY) = GetStickXY(inputId);
|
||||||
short stickY;
|
|
||||||
|
|
||||||
if (inputId == StickInputId.Left)
|
|
||||||
{
|
|
||||||
stickX = SDL_GameControllerGetAxis(_gamepadHandle, SDL_GameControllerAxis.SDL_CONTROLLER_AXIS_LEFTX);
|
|
||||||
stickY = SDL_GameControllerGetAxis(_gamepadHandle, SDL_GameControllerAxis.SDL_CONTROLLER_AXIS_LEFTY);
|
|
||||||
}
|
|
||||||
else if (inputId == StickInputId.Right)
|
|
||||||
{
|
|
||||||
stickX = SDL_GameControllerGetAxis(_gamepadHandle, SDL_GameControllerAxis.SDL_CONTROLLER_AXIS_RIGHTX);
|
|
||||||
stickY = SDL_GameControllerGetAxis(_gamepadHandle, SDL_GameControllerAxis.SDL_CONTROLLER_AXIS_RIGHTY);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
throw new NotSupportedException($"Unsupported stick {inputId}");
|
|
||||||
}
|
|
||||||
|
|
||||||
float resultX = ConvertRawStickValue(stickX);
|
float resultX = ConvertRawStickValue(stickX);
|
||||||
float resultY = -ConvertRawStickValue(stickY);
|
float resultY = -ConvertRawStickValue(stickY);
|
||||||
|
|
@ -368,6 +352,18 @@ namespace Ryujinx.Input.SDL2
|
||||||
return (resultX, resultY);
|
return (resultX, resultY);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private (short, short) GetStickXY(StickInputId inputId) =>
|
||||||
|
inputId switch
|
||||||
|
{
|
||||||
|
StickInputId.Left => (
|
||||||
|
SDL_GameControllerGetAxis(_gamepadHandle, SDL_GameControllerAxis.SDL_CONTROLLER_AXIS_LEFTX),
|
||||||
|
SDL_GameControllerGetAxis(_gamepadHandle, SDL_GameControllerAxis.SDL_CONTROLLER_AXIS_LEFTY)),
|
||||||
|
StickInputId.Right => (
|
||||||
|
SDL_GameControllerGetAxis(_gamepadHandle, SDL_GameControllerAxis.SDL_CONTROLLER_AXIS_RIGHTX),
|
||||||
|
SDL_GameControllerGetAxis(_gamepadHandle, SDL_GameControllerAxis.SDL_CONTROLLER_AXIS_RIGHTY)),
|
||||||
|
_ => throw new NotSupportedException($"Unsupported stick {inputId}")
|
||||||
|
};
|
||||||
|
|
||||||
public bool IsPressed(GamepadButtonInputId inputId)
|
public bool IsPressed(GamepadButtonInputId inputId)
|
||||||
{
|
{
|
||||||
if (inputId == GamepadButtonInputId.LeftTrigger)
|
if (inputId == GamepadButtonInputId.LeftTrigger)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue