summaryrefslogtreecommitdiff
path: root/Source
diff options
context:
space:
mode:
authorAdmiral H. Curtiss <pikachu025@gmail.com>2025-08-01 22:00:17 +0200
committerGitHub <noreply@github.com>2025-08-01 22:00:17 +0200
commitbec5624287c82b0ba50937f20743c6415787dcfa (patch)
tree9c9f13070e1bd5c43df07d1473ef76435b073137 /Source
parent3fb80bec9b947ae9690776bc0a0589ff2b36d1c1 (diff)
parent649e49c9e23a6c2ee4d10958c7cbaed034ced018 (diff)
Merge pull request #13177 from jordan-woyak/remove-nunchuk-hax
ControllerEmu: Remove nunchuk stick data hax.
Diffstat (limited to 'Source')
-rw-r--r--Source/Core/Core/HW/WiimoteEmu/Extension/Nunchuk.cpp22
-rw-r--r--Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.cpp9
-rw-r--r--Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.h1
3 files changed, 1 insertions, 31 deletions
diff --git a/Source/Core/Core/HW/WiimoteEmu/Extension/Nunchuk.cpp b/Source/Core/Core/HW/WiimoteEmu/Extension/Nunchuk.cpp
index 57c4c52b83..b4cf363b79 100644
--- a/Source/Core/Core/HW/WiimoteEmu/Extension/Nunchuk.cpp
+++ b/Source/Core/Core/HW/WiimoteEmu/Extension/Nunchuk.cpp
@@ -65,31 +65,11 @@ void Nunchuk::BuildDesiredExtensionState(DesiredExtensionState* target_state)
DataFormat nc_data = {};
// stick
- bool override_occurred = false;
const ControllerEmu::AnalogStick::StateData stick_state =
- m_stick->GetState(m_input_override_function, &override_occurred);
+ m_stick->GetState(m_input_override_function);
nc_data.jx = MapFloat<u8>(stick_state.x, STICK_CENTER, 0, STICK_RANGE);
nc_data.jy = MapFloat<u8>(stick_state.y, STICK_CENTER, 0, STICK_RANGE);
- if (!override_occurred)
- {
- // Some terribly coded games check whether to move with a check like
- //
- // if (x != 0 && y != 0)
- // do_movement(x, y);
- //
- // With keyboard controls, these games break if you simply hit one
- // of the axes. Adjust this if you're hitting one of the axes so that
- // we slightly tweak the other axis.
- if (nc_data.jx != STICK_CENTER || nc_data.jy != STICK_CENTER)
- {
- if (nc_data.jx == STICK_CENTER)
- ++nc_data.jx;
- if (nc_data.jy == STICK_CENTER)
- ++nc_data.jy;
- }
- }
-
// buttons
u8 buttons = 0;
m_buttons->GetState(&buttons, nunchuk_button_bitmasks.data(), m_input_override_function);
diff --git a/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.cpp b/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.cpp
index c26f143f1c..7cc204ab10 100644
--- a/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.cpp
+++ b/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.cpp
@@ -51,13 +51,6 @@ AnalogStick::StateData AnalogStick::GetState() const
AnalogStick::StateData AnalogStick::GetState(const InputOverrideFunction& override_func) const
{
- bool override_occurred = false;
- return GetState(override_func, &override_occurred);
-}
-
-AnalogStick::StateData AnalogStick::GetState(const InputOverrideFunction& override_func,
- bool* override_occurred) const
-{
StateData state = GetState();
if (!override_func)
return state;
@@ -65,13 +58,11 @@ AnalogStick::StateData AnalogStick::GetState(const InputOverrideFunction& overri
if (const std::optional<ControlState> x_override = override_func(name, X_INPUT_OVERRIDE, state.x))
{
state.x = *x_override;
- *override_occurred = true;
}
if (const std::optional<ControlState> y_override = override_func(name, Y_INPUT_OVERRIDE, state.y))
{
state.y = *y_override;
- *override_occurred = true;
}
return state;
diff --git a/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.h b/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.h
index 09beffe728..0b71baf3c7 100644
--- a/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.h
+++ b/Source/Core/InputCommon/ControllerEmu/ControlGroup/AnalogStick.h
@@ -22,7 +22,6 @@ public:
StateData GetState() const;
StateData GetState(const InputOverrideFunction& override_func) const;
- StateData GetState(const InputOverrideFunction& override_func, bool* override_occurred) const;
private:
Control* GetModifierInput() const override;