summaryrefslogtreecommitdiff
path: root/src/client/joystick_controller.h
diff options
context:
space:
mode:
authorMarkus <markus@notsyncing.net>2020-12-19 22:01:05 +0100
committerGitHub <noreply@github.com>2020-12-19 22:01:05 +0100
commitaf22dd86e3867a35e9e5ab911faa6e1e7671729d (patch)
tree43e91b6941e5e1c6528dbe9e4a35669b3ef58120 /src/client/joystick_controller.h
parent5066fe75830b98f592717b593099a757337c952d (diff)
downloadminetest-af22dd86e3867a35e9e5ab911faa6e1e7671729d.tar.gz
minetest-af22dd86e3867a35e9e5ab911faa6e1e7671729d.tar.bz2
minetest-af22dd86e3867a35e9e5ab911faa6e1e7671729d.zip
Fix some more joystick issues (#10624)
Diffstat (limited to 'src/client/joystick_controller.h')
-rw-r--r--src/client/joystick_controller.h38
1 files changed, 17 insertions, 21 deletions
diff --git a/src/client/joystick_controller.h b/src/client/joystick_controller.h
index 7baacd81b..3f361e4ef 100644
--- a/src/client/joystick_controller.h
+++ b/src/client/joystick_controller.h
@@ -96,7 +96,7 @@ struct JoystickLayout {
std::vector<JoystickButtonCmb> button_keys;
std::vector<JoystickAxisCmb> axis_keys;
JoystickAxisLayout axes[JA_COUNT];
- s16 axes_dead_border;
+ s16 axes_deadzone;
};
class JoystickController {
@@ -111,37 +111,32 @@ public:
bool wasKeyDown(GameKeyType b)
{
- bool r = m_past_pressed_keys[b];
- m_past_pressed_keys[b] = false;
+ bool r = m_past_keys_pressed[b];
+ m_past_keys_pressed[b] = false;
return r;
}
- bool getWasKeyDown(GameKeyType b)
+
+ bool wasKeyReleased(GameKeyType b)
{
- return m_past_pressed_keys[b];
+ return m_keys_released[b];
}
- void clearWasKeyDown(GameKeyType b)
+ void clearWasKeyReleased(GameKeyType b)
{
- m_past_pressed_keys[b] = false;
+ m_keys_released[b] = false;
}
- bool wasKeyReleased(GameKeyType b)
+ bool wasKeyPressed(GameKeyType b)
{
- bool r = m_past_released_keys[b];
- m_past_released_keys[b] = false;
- return r;
- }
- bool getWasKeyReleased(GameKeyType b)
- {
- return m_past_pressed_keys[b];
+ return m_keys_pressed[b];
}
- void clearWasKeyReleased(GameKeyType b)
+ void clearWasKeyPressed(GameKeyType b)
{
- m_past_pressed_keys[b] = false;
+ m_keys_pressed[b] = false;
}
bool isKeyDown(GameKeyType b)
{
- return m_pressed_keys[b];
+ return m_keys_down[b];
}
s16 getAxis(JoystickAxis axis)
@@ -162,12 +157,13 @@ private:
u8 m_joystick_id = 0;
- std::bitset<KeyType::INTERNAL_ENUM_COUNT> m_pressed_keys;
+ std::bitset<KeyType::INTERNAL_ENUM_COUNT> m_keys_down;
+ std::bitset<KeyType::INTERNAL_ENUM_COUNT> m_keys_pressed;
f32 m_internal_time;
f32 m_past_pressed_time[KeyType::INTERNAL_ENUM_COUNT];
- std::bitset<KeyType::INTERNAL_ENUM_COUNT> m_past_pressed_keys;
- std::bitset<KeyType::INTERNAL_ENUM_COUNT> m_past_released_keys;
+ std::bitset<KeyType::INTERNAL_ENUM_COUNT> m_past_keys_pressed;
+ std::bitset<KeyType::INTERNAL_ENUM_COUNT> m_keys_released;
};