Add GamepadDPadX/GamepadDPadY input axes for gamepad DPad
This commit is contained in:
@@ -358,4 +358,14 @@ API_ENUM() enum class InputAxisType
|
|||||||
/// The keyboard only mode. For key inputs.
|
/// The keyboard only mode. For key inputs.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
KeyboardOnly = 9,
|
KeyboardOnly = 9,
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Pad X axis - left/right (DPad / Directional Pad).
|
||||||
|
/// </summary>
|
||||||
|
GamepadDPadX = 10,
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Pad Y axis - up/down (DPad / Directional Pad).
|
||||||
|
/// </summary>
|
||||||
|
GamepadDPadY = 11,
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -862,7 +862,7 @@ void InputService::Update()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Get axis raw value
|
// Get axis raw value
|
||||||
float axisRawValue;
|
float axisRawValue = 0.0f;
|
||||||
switch (config.Axis)
|
switch (config.Axis)
|
||||||
{
|
{
|
||||||
case InputAxisType::MouseX:
|
case InputAxisType::MouseX:
|
||||||
@@ -892,8 +892,17 @@ void InputService::Update()
|
|||||||
case InputAxisType::GamepadRightTrigger:
|
case InputAxisType::GamepadRightTrigger:
|
||||||
axisRawValue = Input::GetGamepadAxis(config.Gamepad, GamepadAxis::RightTrigger);
|
axisRawValue = Input::GetGamepadAxis(config.Gamepad, GamepadAxis::RightTrigger);
|
||||||
break;
|
break;
|
||||||
default:
|
case InputAxisType::GamepadDPadX:
|
||||||
axisRawValue = 0.0f;
|
if (Input::GetGamepadButton(config.Gamepad, GamepadButton::DPadRight))
|
||||||
|
axisRawValue = 1;
|
||||||
|
else if (Input::GetGamepadButton(config.Gamepad, GamepadButton::DPadLeft))
|
||||||
|
axisRawValue = -1;
|
||||||
|
break;
|
||||||
|
case InputAxisType::GamepadDPadY:
|
||||||
|
if (Input::GetGamepadButton(config.Gamepad, GamepadButton::DPadUp))
|
||||||
|
axisRawValue = 1;
|
||||||
|
else if (Input::GetGamepadButton(config.Gamepad, GamepadButton::DPadDown))
|
||||||
|
axisRawValue = -1;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user