Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKae <80987908+Novaenia@users.noreply.github.com>2024-09-02 22:17:26 +1000
committerKae <80987908+Novaenia@users.noreply.github.com>2024-09-02 22:17:26 +1000
commitac7577b4df91fbf31541f203e88eccb64b98365a (patch)
treebc69420c0cab776c49b27deeb93d9d2ffaff75c7
parent566b0f4d362fb2858fe76dca805c4d2930da0f27 (diff)
Rename Keypad enums
noticed keypad binds were named like this in SE (probably due to using the names given by SDL there) and it's nicer anyway. better do this sooner than later.
-rw-r--r--source/application/StarMainApplication_sdl.cpp34
-rw-r--r--source/core/StarInputEvent.cpp34
-rw-r--r--source/core/StarInputEvent.hpp34
-rw-r--r--source/game/StarInput.cpp15
-rw-r--r--source/game/scripting/StarPlayerLuaBindings.cpp4
-rw-r--r--source/windowing/StarTextBoxWidget.cpp2
6 files changed, 68 insertions, 55 deletions
diff --git a/source/application/StarMainApplication_sdl.cpp b/source/application/StarMainApplication_sdl.cpp
index c697a26..6b0ca4c 100644
--- a/source/application/StarMainApplication_sdl.cpp
+++ b/source/application/StarMainApplication_sdl.cpp
@@ -90,23 +90,23 @@ Maybe<Key> keyFromSdlKeyCode(SDL_Keycode sym) {
{SDLK_y, Key::Y},
{SDLK_z, Key::Z},
{SDLK_DELETE, Key::Delete},
- {SDLK_KP_0, Key::Kp0},
- {SDLK_KP_1, Key::Kp1},
- {SDLK_KP_2, Key::Kp2},
- {SDLK_KP_3, Key::Kp3},
- {SDLK_KP_4, Key::Kp4},
- {SDLK_KP_5, Key::Kp5},
- {SDLK_KP_6, Key::Kp6},
- {SDLK_KP_7, Key::Kp7},
- {SDLK_KP_8, Key::Kp8},
- {SDLK_KP_9, Key::Kp9},
- {SDLK_KP_PERIOD, Key::Kp_period},
- {SDLK_KP_DIVIDE, Key::Kp_divide},
- {SDLK_KP_MULTIPLY, Key::Kp_multiply},
- {SDLK_KP_MINUS, Key::Kp_minus},
- {SDLK_KP_PLUS, Key::Kp_plus},
- {SDLK_KP_ENTER, Key::Kp_enter},
- {SDLK_KP_EQUALS, Key::Kp_equals},
+ {SDLK_KP_0, Key::Keypad0},
+ {SDLK_KP_1, Key::Keypad1},
+ {SDLK_KP_2, Key::Keypad2},
+ {SDLK_KP_3, Key::Keypad3},
+ {SDLK_KP_4, Key::Keypad4},
+ {SDLK_KP_5, Key::Keypad5},
+ {SDLK_KP_6, Key::Keypad6},
+ {SDLK_KP_7, Key::Keypad7},
+ {SDLK_KP_8, Key::Keypad8},
+ {SDLK_KP_9, Key::Keypad9},
+ {SDLK_KP_PERIOD, Key::KeypadPeriod},
+ {SDLK_KP_DIVIDE, Key::KeypadDivide},
+ {SDLK_KP_MULTIPLY, Key::KeypadMultiply},
+ {SDLK_KP_MINUS, Key::KeypadMinus},
+ {SDLK_KP_PLUS, Key::KeypadPlus},
+ {SDLK_KP_ENTER, Key::KeypadEnter},
+ {SDLK_KP_EQUALS, Key::KeypadEquals},
{SDLK_UP, Key::Up},
{SDLK_DOWN, Key::Down},
{SDLK_RIGHT, Key::Right},
diff --git a/source/core/StarInputEvent.cpp b/source/core/StarInputEvent.cpp
index e4b1e64..6a46d72 100644
--- a/source/core/StarInputEvent.cpp
+++ b/source/core/StarInputEvent.cpp
@@ -73,23 +73,23 @@ EnumMap<Key> const KeyNames{
{Key::Y, "Y"},
{Key::Z, "Z"},
{Key::Delete, "Del"},
- {Key::Kp0, "Kp0"},
- {Key::Kp1, "Kp1"},
- {Key::Kp2, "Kp2"},
- {Key::Kp3, "Kp3"},
- {Key::Kp4, "Kp4"},
- {Key::Kp5, "Kp5"},
- {Key::Kp6, "Kp6"},
- {Key::Kp7, "Kp7"},
- {Key::Kp8, "Kp8"},
- {Key::Kp9, "Kp9"},
- {Key::Kp_period, "Kp_period"},
- {Key::Kp_divide, "Kp_divide"},
- {Key::Kp_multiply, "Kp_multiply"},
- {Key::Kp_minus, "Kp_minus"},
- {Key::Kp_plus, "Kp_plus"},
- {Key::Kp_enter, "Kp_enter"},
- {Key::Kp_equals, "Kp_equals"},
+ {Key::Keypad0, "Keypad 0"},
+ {Key::Keypad1, "Keypad 1"},
+ {Key::Keypad2, "Keypad 2"},
+ {Key::Keypad3, "Keypad 3"},
+ {Key::Keypad4, "Keypad 4"},
+ {Key::Keypad5, "Keypad 5"},
+ {Key::Keypad6, "Keypad 6"},
+ {Key::Keypad7, "Keypad 7"},
+ {Key::Keypad8, "Keypad 8"},
+ {Key::Keypad9, "Keypad 9"},
+ {Key::KeypadPeriod, "Keypad ."},
+ {Key::KeypadDivide, "Keypad /"},
+ {Key::KeypadMultiply, "Keypad *"},
+ {Key::KeypadMinus, "Keypad -"},
+ {Key::KeypadPlus, "Keypad +"},
+ {Key::KeypadEnter, "Keypad Enter"},
+ {Key::KeypadEquals, "Keypad ="},
{Key::Up, "Up"},
{Key::Down, "Down"},
{Key::Right, "Right"},
diff --git a/source/core/StarInputEvent.hpp b/source/core/StarInputEvent.hpp
index e8740b5..cace466 100644
--- a/source/core/StarInputEvent.hpp
+++ b/source/core/StarInputEvent.hpp
@@ -78,23 +78,23 @@ enum class Key : uint16_t {
Y,
Z,
Delete,
- Kp0,
- Kp1,
- Kp2,
- Kp3,
- Kp4,
- Kp5,
- Kp6,
- Kp7,
- Kp8,
- Kp9,
- Kp_period,
- Kp_divide,
- Kp_multiply,
- Kp_minus,
- Kp_plus,
- Kp_enter,
- Kp_equals,
+ Keypad0,
+ Keypad1,
+ Keypad2,
+ Keypad3,
+ Keypad4,
+ Keypad5,
+ Keypad6,
+ Keypad7,
+ Keypad8,
+ Keypad9,
+ KeypadPeriod,
+ KeypadDivide,
+ KeypadMultiply,
+ KeypadMinus,
+ KeypadPlus,
+ KeypadEnter,
+ KeypadEquals,
Up,
Down,
Right,
diff --git a/source/game/StarInput.cpp b/source/game/StarInput.cpp
index 2400207..7869b52 100644
--- a/source/game/StarInput.cpp
+++ b/source/game/StarInput.cpp
@@ -160,19 +160,28 @@ Input::Bind Input::bindFromJson(Json const& json) {
if (type == "key") {
KeyBind keyBind;
- keyBind.key = KeyNames.getLeft(value.toString());
+ if (auto key = KeyNames.maybeLeft(value.toString()))
+ keyBind.key = *key;
+ else
+ return bind;
keyBind.mods = keyModsFromJson(json.getArray("mods", {}), &keyBind.priority);
bind = std::move(keyBind);
}
else if (type == "mouse") {
MouseBind mouseBind;
- mouseBind.button = MouseButtonNames.getLeft(value.toString());
+ if (auto button = MouseButtonNames.maybeLeft(value.toString()))
+ mouseBind.button = *button;
+ else
+ return bind;
mouseBind.mods = keyModsFromJson(json.getArray("mods", {}), &mouseBind.priority);
bind = std::move(mouseBind);
}
else if (type == "controller") {
ControllerBind controllerBind;
- controllerBind.button = ControllerButtonNames.getLeft(value.toString());
+ if (auto button = ControllerButtonNames.maybeLeft(value.toString()))
+ controllerBind.button = *button;
+ else
+ return bind;
controllerBind.controller = json.getUInt("controller", 0);
bind = std::move(controllerBind);
}
diff --git a/source/game/scripting/StarPlayerLuaBindings.cpp b/source/game/scripting/StarPlayerLuaBindings.cpp
index 3a75b28..a6da4cc 100644
--- a/source/game/scripting/StarPlayerLuaBindings.cpp
+++ b/source/game/scripting/StarPlayerLuaBindings.cpp
@@ -229,6 +229,10 @@ LuaCallbacks LuaBindings::makePlayerCallbacks(Player* player) {
return luaTupleReturn(HumanoidEmoteNames.getRight(currentEmote.first), currentEmote.second);
});
+ callbacks.registerCallback("currentState", [player]() {
+ return Player::StateNames.getRight(player->currentState());
+ });
+
callbacks.registerCallback("aimPosition", [player]() { return player->aimPosition(); });
callbacks.registerCallback("id", [player]() { return player->entityId(); });
diff --git a/source/windowing/StarTextBoxWidget.cpp b/source/windowing/StarTextBoxWidget.cpp
index 41b4696..634a006 100644
--- a/source/windowing/StarTextBoxWidget.cpp
+++ b/source/windowing/StarTextBoxWidget.cpp
@@ -284,7 +284,7 @@ bool TextBoxWidget::innerSendEvent(InputEvent const& event) {
}
return false;
}
- if (keyDown->key == Key::Return || keyDown->key == Key::Kp_enter) {
+ if (keyDown->key == Key::Return || keyDown->key == Key::KeypadEnter) {
if (m_onEnterKey) {
m_onEnterKey(this);
return true;