summaryrefslogtreecommitdiffstats
path: root/game/client/gamepad_axis.cc
diff options
context:
space:
mode:
Diffstat (limited to 'game/client/gamepad_axis.cc')
-rw-r--r--game/client/gamepad_axis.cc42
1 files changed, 23 insertions, 19 deletions
diff --git a/game/client/gamepad_axis.cc b/game/client/gamepad_axis.cc
index dff0894..4d4d953 100644
--- a/game/client/gamepad_axis.cc
+++ b/game/client/gamepad_axis.cc
@@ -1,26 +1,29 @@
#include "client/pch.hh"
+
#include "client/gamepad_axis.hh"
#include "core/constexpr.hh"
#include "client/gamepad.hh"
-constexpr static const char *UNKNOWN_AXIS_NAME = "UNKNOWN";
+constexpr static const char* UNKNOWN_AXIS_NAME = "UNKNOWN";
-static const std::pair<int, const char *> axis_names[] = {
- { GLFW_GAMEPAD_AXIS_LEFT_X, "LEFT_X" },
- { GLFW_GAMEPAD_AXIS_LEFT_Y, "LEFT_Y" },
- { GLFW_GAMEPAD_AXIS_RIGHT_X, "RIGHT_X" },
- { GLFW_GAMEPAD_AXIS_RIGHT_Y, "RIGHT_Y" },
- { GLFW_GAMEPAD_AXIS_LEFT_TRIGGER, "LEFT_TRIG" },
- { GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER, "RIGHT_TRIG" },
+static const std::pair<int, const char*> axis_names[] = {
+ { GLFW_GAMEPAD_AXIS_LEFT_X, "LEFT_X" },
+ { GLFW_GAMEPAD_AXIS_LEFT_Y, "LEFT_Y" },
+ { GLFW_GAMEPAD_AXIS_RIGHT_X, "RIGHT_X" },
+ { GLFW_GAMEPAD_AXIS_RIGHT_Y, "RIGHT_Y" },
+ { GLFW_GAMEPAD_AXIS_LEFT_TRIGGER, "LEFT_TRIG" },
+ { GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER, "RIGHT_TRIG" },
};
-static const char *get_axis_name(int axis)
+static const char* get_axis_name(int axis)
{
- for(const auto &it : axis_names) {
- if(it.first != axis)
+ for(const auto& it : axis_names) {
+ if(it.first != axis) {
continue;
+ }
+
return it.second;
}
@@ -29,7 +32,6 @@ static const char *get_axis_name(int axis)
ConfigGamepadAxis::ConfigGamepadAxis(void) : ConfigGamepadAxis(INVALID_GAMEPAD_AXIS, false)
{
-
}
ConfigGamepadAxis::ConfigGamepadAxis(int axis, bool inverted)
@@ -40,18 +42,18 @@ ConfigGamepadAxis::ConfigGamepadAxis(int axis, bool inverted)
m_full_string = fmt::format("{}:{}", m_name, m_inverted ? 1U : 0U);
}
-const char *ConfigGamepadAxis::get(void) const
+const char* ConfigGamepadAxis::get(void) const
{
return m_full_string.c_str();
}
-void ConfigGamepadAxis::set(const char *value)
+void ConfigGamepadAxis::set(const char* value)
{
char new_name[64];
unsigned int new_invert;
if(2 == std::sscanf(value, "%63[^:]:%u", new_name, &new_invert)) {
- for(const auto &it : axis_names) {
+ for(const auto& it : axis_names) {
if(!std::strcmp(it.second, new_name)) {
m_inverted = new_invert;
m_gamepad_axis = it.first;
@@ -91,20 +93,22 @@ void ConfigGamepadAxis::set_inverted(bool inverted)
m_full_string = fmt::format("{}:{}", m_name, m_inverted ? 1U : 0U);
}
-float ConfigGamepadAxis::get_value(const GLFWgamepadstate &state, float deadzone) const
+float ConfigGamepadAxis::get_value(const GLFWgamepadstate& state, float deadzone) const
{
if(m_gamepad_axis <= cxpr::array_size(state.axes)) {
auto value = state.axes[m_gamepad_axis];
- if(cxpr::abs(value) > deadzone)
+
+ if(cxpr::abs(value) > deadzone) {
return m_inverted ? -value : value;
+ }
+
return 0.0f;
}
return 0.0f;
-
}
-const char *ConfigGamepadAxis::get_name(void) const
+const char* ConfigGamepadAxis::get_name(void) const
{
return m_name;
}