diff options
-rw-r--r-- | src/CMakeLists.txt | 1 | ||||
-rw-r--r-- | src/Makefile.am | 1 | ||||
-rw-r--r-- | src/input/inputmanager.cpp | 42 | ||||
-rw-r--r-- | src/input/inputmanager.h | 16 | ||||
-rw-r--r-- | src/input/inputtype.h | 43 | ||||
-rw-r--r-- | src/input/joystick.cpp | 5 | ||||
-rw-r--r-- | src/input/keyboardconfig.cpp | 7 | ||||
-rw-r--r-- | src/input/keyboarddata.h | 1225 |
8 files changed, 686 insertions, 654 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 2fc02e2f1..ec0837df3 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -753,6 +753,7 @@ SET(SRCS textcommand.h input/inputmanager.cpp input/inputmanager.h + input/inputtype.h events/inputevent.h input/joystick.cpp input/joystick.h diff --git a/src/Makefile.am b/src/Makefile.am index bd02cd8b9..c248a8822 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -858,6 +858,7 @@ manaplus_SOURCES += gui/widgets/avatarlistbox.cpp \ events/inputevent.h \ input/inputmanager.cpp \ input/inputmanager.h \ + input/inputtype.h \ input/joystick.cpp \ input/joystick.h \ input/keyboardconfig.cpp \ diff --git a/src/input/inputmanager.cpp b/src/input/inputmanager.cpp index d3f38c7c1..0c99c0908 100644 --- a/src/input/inputmanager.cpp +++ b/src/input/inputmanager.cpp @@ -83,7 +83,7 @@ void InputManager::init() for (unsigned int f = 0; f < KeyFunctionSize; f ++) { KeyItem &ki = kf.values[f]; - ki.type = INPUT_UNKNOWN; + ki.type = InputType::UNKNOWN; ki.value = -1; } } @@ -129,17 +129,17 @@ void InputManager::retrieve() std::string keyStr2 = *it; if (keyStrSize < 2) continue; - int type = INPUT_KEYBOARD; + int type = InputType::KEYBOARD; if ((keyStr2[0] < '0' || keyStr2[0] > '9') && keyStr2[0] != '-') { switch (keyStr2[0]) { case 'm': - type = INPUT_MOUSE; + type = InputType::MOUSE; break; case 'j': - type = INPUT_JOYSTICK; + type = InputType::JOYSTICK; break; default: break; @@ -174,15 +174,15 @@ void InputManager::store() const for (size_t i2 = 0; i2 < KeyFunctionSize; i2 ++) { const KeyItem &key = kf.values[i2]; - if (key.type != INPUT_UNKNOWN) + if (key.type != InputType::UNKNOWN) { std::string tmp("k"); switch (key.type) { - case INPUT_MOUSE: + case InputType::MOUSE: tmp = "m"; break; - case INPUT_JOYSTICK: + case InputType::JOYSTICK: tmp = "j"; break; default: @@ -216,7 +216,7 @@ void InputManager::resetKey(const int i) for (size_t i2 = 1; i2 < KeyFunctionSize; i2 ++) { KeyItem &ki2 = key.values[i2]; - ki2.type = INPUT_UNKNOWN; + ki2.type = InputType::UNKNOWN; ki2.value = -1; } const KeyData &kd = keyData[i]; @@ -225,11 +225,11 @@ void InputManager::resetKey(const int i) KeyItem &val1 = key.values[1]; val1.type = kd.defaultType2; #ifdef USE_SDL2 - if (kd.defaultType1 == INPUT_KEYBOARD) + if (kd.defaultType1 == InputType::KEYBOARD) val0.value = SDL_GetScancodeFromKey(kd.defaultValue1); else val0.value = kd.defaultValue1; - if (kd.defaultType2 == INPUT_KEYBOARD) + if (kd.defaultType2 == InputType::KEYBOARD) val1.value = SDL_GetScancodeFromKey(kd.defaultValue2); else val1.value = kd.defaultValue2; @@ -284,7 +284,7 @@ bool InputManager::hasConflicts(int &restrict key1, int &restrict key2) const const KeyItem &valj2 = mKey[j].values[j2]; // Allow for item shortcut and emote keys to overlap // as well as emote and ignore keys, but no other keys - if (valj2.type != INPUT_UNKNOWN + if (valj2.type != InputType::UNKNOWN && vali2.value == valj2.value && vali2.type == valj2.type) { @@ -342,7 +342,7 @@ std::string InputManager::getKeyStringLong(const int index) const { const KeyItem &key = ki.values[i]; std::string str; - if (key.type == INPUT_KEYBOARD) + if (key.type == InputType::KEYBOARD) { if (key.value >= 0) { @@ -354,7 +354,7 @@ std::string InputManager::getKeyStringLong(const int index) const str = strprintf(_("key_%d"), -key.value); } } - else if (key.type == INPUT_JOYSTICK) + else if (key.type == InputType::JOYSTICK) { // TRANSLATORS: long joystick button name. must be short. str = strprintf(_("JButton%d"), key.value + 1); @@ -385,7 +385,7 @@ std::string InputManager::getKeyValueString(const int index) const { const KeyItem &key = ki.values[i]; std::string str; - if (key.type == INPUT_KEYBOARD) + if (key.type == InputType::KEYBOARD) { if (key.value >= 0) { @@ -398,7 +398,7 @@ std::string InputManager::getKeyValueString(const int index) const str = strprintf(_("key_%d"), -key.value); } } - else if (key.type == INPUT_JOYSTICK) + else if (key.type == InputType::JOYSTICK) { // TRANSLATORS: short joystick button name. muse be very short str = strprintf(_("JB%d"), key.value + 1); @@ -441,7 +441,7 @@ void InputManager::addActionKey(const int action, const int type, for (size_t i = 0; i < KeyFunctionSize; i ++) { const KeyItem &val2 = key.values[i]; - if (val2.type == INPUT_UNKNOWN || (val2.type == type + if (val2.type == InputType::UNKNOWN || (val2.type == type && val2.value == val)) { idx = static_cast<int>(i); @@ -466,9 +466,9 @@ void InputManager::addActionKey(const int action, const int type, void InputManager::setNewKey(const SDL_Event &event, const int type) { int val = -1; - if (type == INPUT_KEYBOARD) + if (type == InputType::KEYBOARD) val = KeyboardConfig::getKeyValueFromEvent(event); - else if (type == INPUT_JOYSTICK && joystick) + else if (type == InputType::JOYSTICK && joystick) val = joystick->getButtonFromEvent(event); if (val != -1) @@ -484,7 +484,7 @@ void InputManager::unassignKey() for (size_t i = 0; i < KeyFunctionSize; i ++) { KeyItem &val = key.values[i]; - val.type = INPUT_UNKNOWN; + val.type = InputType::UNKNOWN; val.value = -1; } update(); @@ -511,7 +511,7 @@ bool InputManager::handleEvent(const SDL_Event &event) { keyboard.refreshActiveKeys(); updateConditionMask(); - if (handleAssignKey(event, INPUT_KEYBOARD)) + if (handleAssignKey(event, InputType::KEYBOARD)) return true; keyboard.handleActicateKey(event); @@ -538,7 +538,7 @@ bool InputManager::handleEvent(const SDL_Event &event) { updateConditionMask(); // joystick.handleActicateButton(event); - if (handleAssignKey(event, INPUT_JOYSTICK)) + if (handleAssignKey(event, InputType::JOYSTICK)) return true; break; } diff --git a/src/input/inputmanager.h b/src/input/inputmanager.h index bf9e04f34..dcdcfc4c7 100644 --- a/src/input/inputmanager.h +++ b/src/input/inputmanager.h @@ -32,24 +32,8 @@ const unsigned int KeyFunctionSize = 3; -// hack to avoid conflicts with windows headers. -#ifdef INPUT_KEYBOARD -#undef INPUT_KEYBOARD -#endif -#ifdef INPUT_MOUSE -#undef INPUT_MOUSE -#endif - class Setup_Input; -enum KeyTypes -{ - INPUT_UNKNOWN = 0, - INPUT_KEYBOARD = 1, - INPUT_MOUSE = 2, - INPUT_JOYSTICK = 3 -}; - struct KeyItem final { KeyItem() : diff --git a/src/input/inputtype.h b/src/input/inputtype.h new file mode 100644 index 000000000..883137071 --- /dev/null +++ b/src/input/inputtype.h @@ -0,0 +1,43 @@ +/* + * The ManaPlus Client + * Copyright (C) 2012-2014 The ManaPlus Developers + * + * This file is part of The ManaPlus Client. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef INPUT_INPUTTYPE_H +#define INPUT_INPUTTYPE_H + +// hack to avoid conflicts with windows headers. +#ifdef KEYBOARD +#undef KEYBOARD +#endif +#ifdef MOUSE +#undef MOUSE +#endif + +namespace InputType +{ + enum Type + { + UNKNOWN = 0, + KEYBOARD = 1, + MOUSE = 2, + JOYSTICK = 3 + }; +} + +#endif // INPUT_INPUTTYPE_H diff --git a/src/input/joystick.cpp b/src/input/joystick.cpp index 7343ec00c..2368876cc 100644 --- a/src/input/joystick.cpp +++ b/src/input/joystick.cpp @@ -28,6 +28,7 @@ #include "sdlshared.h" #include "input/inputmanager.h" +#include "input/inputtype.h" #include "utils/timer.h" @@ -278,7 +279,7 @@ void Joystick::getNames(std::vector <std::string> &names) void Joystick::update() { inputManager.updateKeyActionMap(mKeyToAction, mKeyToId, - mKeyTimeMap, INPUT_JOYSTICK); + mKeyTimeMap, InputType::JOYSTICK); } KeysVector *Joystick::getActionVector(const SDL_Event &event) @@ -319,7 +320,7 @@ bool Joystick::isActionActive(const int index) const for (size_t i = 0; i < KeyFunctionSize; i ++) { const KeyItem &val = key.values[i]; - if (val.type != INPUT_JOYSTICK) + if (val.type != InputType::JOYSTICK) continue; const int value = val.value; if (value >= 0 && value < mButtonsNumber) diff --git a/src/input/keyboardconfig.cpp b/src/input/keyboardconfig.cpp index 8f1df687f..58ef2007a 100644 --- a/src/input/keyboardconfig.cpp +++ b/src/input/keyboardconfig.cpp @@ -25,6 +25,7 @@ #include "configuration.h" #include "input/inputmanager.h" +#include "input/inputtype.h" #include "utils/gettext.h" @@ -75,7 +76,7 @@ int KeyboardConfig::getKeyValueFromEvent(const SDL_Event &event) int KeyboardConfig::getKeyIndex(const SDL_Event &event, const int grp) { const int keyValue = getKeyValueFromEvent(event); - return inputManager.getKeyIndex(keyValue, grp, INPUT_KEYBOARD); + return inputManager.getKeyIndex(keyValue, grp, InputType::KEYBOARD); } void KeyboardConfig::refreshActiveKeys() @@ -191,7 +192,7 @@ bool KeyboardConfig::isActionActive(const int index) const for (size_t i = 0; i < KeyFunctionSize; i ++) { const KeyItem &val = key.values[i]; - if (val.type != INPUT_KEYBOARD) + if (val.type != InputType::KEYBOARD) continue; const int value = val.value; @@ -212,7 +213,7 @@ bool KeyboardConfig::isActionActive(const int index) const void KeyboardConfig::update() { inputManager.updateKeyActionMap(mKeyToAction, mKeyToId, - mKeyTimeMap, INPUT_KEYBOARD); + mKeyTimeMap, InputType::KEYBOARD); } void KeyboardConfig::handleActicateKey(const SDL_Event &event) diff --git a/src/input/keyboarddata.h b/src/input/keyboarddata.h index c099e573e..2503d08fd 100644 --- a/src/input/keyboarddata.h +++ b/src/input/keyboarddata.h @@ -27,6 +27,7 @@ #include "localconsts.h" #include "input/inputmanager.h" +#include "input/inputtype.h" #include "utils/gettext.h" @@ -35,2146 +36,2146 @@ // keyData must be in same order as enum keyAction. static const KeyData keyData[Input::KEY_TOTAL] = { {"keyMoveUp", - INPUT_KEYBOARD, SDLK_UP, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_UP, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::moveUp, Input::KEY_NO_VALUE, 50, COND_ARROWKEYS}, {"keyMoveDown", - INPUT_KEYBOARD, SDLK_DOWN, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_DOWN, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::moveDown, Input::KEY_NO_VALUE, 50, COND_ARROWKEYS}, {"keyMoveLeft", - INPUT_KEYBOARD, SDLK_LEFT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_LEFT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::moveLeft, Input::KEY_NO_VALUE, 50, COND_ARROWKEYS}, {"keyMoveRight", - INPUT_KEYBOARD, SDLK_RIGHT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_RIGHT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::moveRight, Input::KEY_NO_VALUE, 50, COND_ARROWKEYS}, {"keyAttack", - INPUT_KEYBOARD, SDLK_x, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_x, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_REPEAT, &ActionManager::attack, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOFOLLOW | COND_VALIDSPEED}, {"keyTargetAttack", - INPUT_KEYBOARD, SDLK_LCTRL, - INPUT_JOYSTICK, 0, + InputType::KEYBOARD, SDLK_LCTRL, + InputType::JOYSTICK, 0, Input::GRP_DEFAULT, &ActionManager::targetAttack, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOFOLLOW | COND_VALIDSPEED}, {"keyMoveToTarget", - INPUT_KEYBOARD, SDLK_v, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_v, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::moveToTarget, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keyChangeMoveToTarget", - INPUT_KEYBOARD, SDLK_PERIOD, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_PERIOD, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeMoveToTarget, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED | COND_EMODS}, {"keyMoveToHome", - INPUT_KEYBOARD, SDLK_d, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_d, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::moveToHome, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keySetHome", - INPUT_KEYBOARD, SDLK_KP5, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP5, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::setHome, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keyMoveToPoint", - INPUT_KEYBOARD, SDLK_RSHIFT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_RSHIFT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT | COND_INGAME}, {"keyTalk", - INPUT_KEYBOARD, SDLK_t, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_t, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::talk, Input::KEY_NO_VALUE, 50, COND_GAME}, {"keyTarget", - INPUT_KEYBOARD, SDLK_LSHIFT, - INPUT_JOYSTICK, 4, + InputType::KEYBOARD, SDLK_LSHIFT, + InputType::JOYSTICK, 4, Input::GRP_DEFAULT, &ActionManager::stopAttack, Input::KEY_NO_VALUE, 50, COND_GAME}, {"keyUnTarget", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::untarget, Input::KEY_NO_VALUE, 50, COND_GAME}, {"keyTargetMonster", - INPUT_KEYBOARD, SDLK_a, - INPUT_JOYSTICK, 3, + InputType::KEYBOARD, SDLK_a, + InputType::JOYSTICK, 3, Input::GRP_DEFAULT | Input::GRP_REPEAT, &ActionManager::targetMonster, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET | COND_VALIDSPEED}, {"keyTargetNPC", - INPUT_KEYBOARD, SDLK_n, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_n, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::targetNPC, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyTargetPlayer", - INPUT_KEYBOARD, SDLK_q, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_q, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::targetPlayer, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyPickup", - INPUT_KEYBOARD, SDLK_z, - INPUT_JOYSTICK, 1, + InputType::KEYBOARD, SDLK_z, + InputType::JOYSTICK, 1, Input::GRP_DEFAULT, &ActionManager::pickup, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyChangePickupType", - INPUT_KEYBOARD, SDLK_o, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_o, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changePickupType, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED | COND_EMODS}, {"keyHideWindows", - INPUT_KEYBOARD, SDLK_h, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_h, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::hideWindows, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyBeingSit", - INPUT_KEYBOARD, SDLK_s, - INPUT_JOYSTICK, 2, + InputType::KEYBOARD, SDLK_s, + InputType::JOYSTICK, 2, Input::GRP_DEFAULT, &ActionManager::sit, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyScreenshot", - INPUT_KEYBOARD, SDLK_p, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_p, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::screenshot, Input::KEY_NO_VALUE, 50, COND_NOTARGET}, {"keyTrade", - INPUT_KEYBOARD, SDLK_r, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_r, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeTrade, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyPathfind", - INPUT_KEYBOARD, SDLK_f, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_f, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeMapMode, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET | COND_EMODS}, {"keyOK", - INPUT_KEYBOARD, SDLK_SPACE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_SPACE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::ok, Input::KEY_NO_VALUE, 50, COND_NOMODAL | COND_NOAWAY | COND_NONPCINPUT}, {"keyQuit", - INPUT_KEYBOARD, SDLK_ESCAPE, + InputType::KEYBOARD, SDLK_ESCAPE, #if defined(USE_SDL2) && defined(ANDROID) - INPUT_KEYBOARD, SDLK_AC_BACK, + InputType::KEYBOARD, SDLK_AC_BACK, #else - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, #endif Input::GRP_DEFAULT, &ActionManager::quit, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyShortcutsKey", - INPUT_KEYBOARD, SDLK_MENU, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_MENU, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT | COND_INGAME}, {"keyShortcut1", - INPUT_KEYBOARD, SDLK_1, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_1, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut2", - INPUT_KEYBOARD, SDLK_2, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_2, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut3", - INPUT_KEYBOARD, SDLK_3, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_3, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut4", - INPUT_KEYBOARD, SDLK_4, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_4, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut5", - INPUT_KEYBOARD, SDLK_5, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_5, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut6", - INPUT_KEYBOARD, SDLK_6, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_6, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut7", - INPUT_KEYBOARD, SDLK_7, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_7, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut8", - INPUT_KEYBOARD, SDLK_8, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_8, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut9", - INPUT_KEYBOARD, SDLK_9, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_9, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut10", - INPUT_KEYBOARD, SDLK_0, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_0, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut11", - INPUT_KEYBOARD, SDLK_MINUS, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_MINUS, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut12", - INPUT_KEYBOARD, SDLK_EQUALS, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_EQUALS, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut13", - INPUT_KEYBOARD, SDLK_BACKSPACE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_BACKSPACE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut14", - INPUT_KEYBOARD, SDLK_INSERT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_INSERT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut15", - INPUT_KEYBOARD, SDLK_HOME, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_HOME, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut16", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut17", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut18", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut19", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyShortcut20", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::shortcut, Input::KEY_NO_VALUE, 50, COND_SHORTCUT}, {"keyWindowHelp", - INPUT_KEYBOARD, SDLK_F1, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F1, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::helpWindowShow, Input::KEY_NO_VALUE, 50, COND_SHORTCUT0}, {"keyWindowStatus", - INPUT_KEYBOARD, SDLK_F2, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F2, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::statusWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowInventory", - INPUT_KEYBOARD, SDLK_F3, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F3, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::inventoryWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowEquipment", - INPUT_KEYBOARD, SDLK_F4, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F4, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::equipmentWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowSkill", - INPUT_KEYBOARD, SDLK_F5, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F5, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::skillDialogShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowMinimap", - INPUT_KEYBOARD, SDLK_F6, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F6, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::minimapWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowChat", - INPUT_KEYBOARD, SDLK_F7, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F7, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::chatWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowShortcut", - INPUT_KEYBOARD, SDLK_F8, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F8, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::shortcutWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowSetup", - INPUT_KEYBOARD, SDLK_F9, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F9, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::setupWindowShow, Input::KEY_NO_VALUE, 50, COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, {"keyWindowDebug", - INPUT_KEYBOARD, SDLK_F10, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F10, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::debugWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowSocial", - INPUT_KEYBOARD, SDLK_F11, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F11, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::socialWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowEmoteBar", - INPUT_KEYBOARD, SDLK_F12, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F12, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::emoteShortcutWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowOutfit", - INPUT_KEYBOARD, SDLK_BACKQUOTE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_BACKQUOTE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::outfitWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowShop", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::shopWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowDrop", - INPUT_KEYBOARD, SDLK_w, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_w, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::dropShortcutWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowKills", - INPUT_KEYBOARD, SDLK_e, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_e, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::killStatsWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowSpells", - INPUT_KEYBOARD, SDLK_j, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_j, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::spellShortcutWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowBotChecker", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::botcheckerWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowOnline", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::whoIsOnlineWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyWindowDidYouKnow", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::didYouKnowWindowShow, Input::KEY_NO_VALUE, 50, COND_SHORTCUT0}, {"keyWindowQuests", - INPUT_KEYBOARD, SDLK_LEFTBRACKET, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_LEFTBRACKET, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::questsWindowShow, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keySocialPrevTab", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::prevSocialTab, Input::KEY_NO_VALUE, 50, COND_NOINPUT | COND_INGAME}, {"keySocialNextTab", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::nextSocialTab, Input::KEY_NO_VALUE, 50, COND_NOINPUT | COND_INGAME}, {"keySmilie", - INPUT_KEYBOARD, SDLK_LALT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_LALT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT | COND_INGAME}, {"keyEmoteShortcut1", - INPUT_KEYBOARD, SDLK_1, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_1, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut2", - INPUT_KEYBOARD, SDLK_2, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_2, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut3", - INPUT_KEYBOARD, SDLK_3, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_3, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut4", - INPUT_KEYBOARD, SDLK_4, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_4, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut5", - INPUT_KEYBOARD, SDLK_5, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_5, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut6", - INPUT_KEYBOARD, SDLK_6, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_6, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut7", - INPUT_KEYBOARD, SDLK_7, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_7, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut8", - INPUT_KEYBOARD, SDLK_8, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_8, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut9", - INPUT_KEYBOARD, SDLK_9, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_9, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut10", - INPUT_KEYBOARD, SDLK_0, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_0, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut11", - INPUT_KEYBOARD, SDLK_MINUS, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_MINUS, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut12", - INPUT_KEYBOARD, SDLK_EQUALS, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_EQUALS, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut13", - INPUT_KEYBOARD, SDLK_BACKSPACE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_BACKSPACE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut14", - INPUT_KEYBOARD, SDLK_INSERT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_INSERT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut15", - INPUT_KEYBOARD, SDLK_HOME, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_HOME, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut16", - INPUT_KEYBOARD, SDLK_q, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_q, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut17", - INPUT_KEYBOARD, SDLK_w, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_w, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut18", - INPUT_KEYBOARD, SDLK_e, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_e, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut19", - INPUT_KEYBOARD, SDLK_r, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_r, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut20", - INPUT_KEYBOARD, SDLK_t, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_t, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut21", - INPUT_KEYBOARD, SDLK_y, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_y, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut22", - INPUT_KEYBOARD, SDLK_u, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_u, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut23", - INPUT_KEYBOARD, SDLK_i, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_i, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut24", - INPUT_KEYBOARD, SDLK_o, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_o, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut25", - INPUT_KEYBOARD, SDLK_p, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_p, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut26", - INPUT_KEYBOARD, SDLK_LEFTBRACKET, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_LEFTBRACKET, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut27", - INPUT_KEYBOARD, SDLK_RIGHTBRACKET, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_RIGHTBRACKET, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut28", - INPUT_KEYBOARD, SDLK_BACKSLASH, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_BACKSLASH, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut29", - INPUT_KEYBOARD, SDLK_a, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_a, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut30", - INPUT_KEYBOARD, SDLK_s, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_s, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut31", - INPUT_KEYBOARD, SDLK_d, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_d, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut32", - INPUT_KEYBOARD, SDLK_f, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_f, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut33", - INPUT_KEYBOARD, SDLK_g, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_g, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut34", - INPUT_KEYBOARD, SDLK_h, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_h, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut35", - INPUT_KEYBOARD, SDLK_j, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_j, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut36", - INPUT_KEYBOARD, SDLK_k, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_k, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut37", - INPUT_KEYBOARD, SDLK_l, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_l, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut38", - INPUT_KEYBOARD, SDLK_SEMICOLON, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_SEMICOLON, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut39", - INPUT_KEYBOARD, SDLK_QUOTE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_QUOTE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut40", - INPUT_KEYBOARD, SDLK_z, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_z, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut41", - INPUT_KEYBOARD, SDLK_x, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_x, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut42", - INPUT_KEYBOARD, SDLK_c, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_c, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut43", - INPUT_KEYBOARD, SDLK_v, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_v, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut44", - INPUT_KEYBOARD, SDLK_b, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_b, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut45", - INPUT_KEYBOARD, SDLK_n, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_n, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut46", - INPUT_KEYBOARD, SDLK_m, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_m, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut47", - INPUT_KEYBOARD, SDLK_COMMA, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_COMMA, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyEmoteShortcut48", - INPUT_KEYBOARD, SDLK_PERIOD, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_PERIOD, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_EMOTION, &ActionManager::emote, Input::KEY_EMOTE, 100, COND_GAME}, {"keyWearOutfit", - INPUT_KEYBOARD, SDLK_RCTRL, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_RCTRL, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT | COND_INGAME}, {"keyCopyOutfit", - INPUT_KEYBOARD, SDLK_RALT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_RALT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT | COND_INGAME}, {"keyCopyEquipedOutfit", - INPUT_KEYBOARD, SDLK_RIGHTBRACKET, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_RIGHTBRACKET, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::copyEquippedToOutfit, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keyOutfitShortcut1", - INPUT_KEYBOARD, SDLK_1, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_1, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut2", - INPUT_KEYBOARD, SDLK_2, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_2, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut3", - INPUT_KEYBOARD, SDLK_3, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_3, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut4", - INPUT_KEYBOARD, SDLK_4, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_4, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut5", - INPUT_KEYBOARD, SDLK_5, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_5, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut6", - INPUT_KEYBOARD, SDLK_6, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_6, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut7", - INPUT_KEYBOARD, SDLK_7, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_7, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut8", - INPUT_KEYBOARD, SDLK_8, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_8, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut9", - INPUT_KEYBOARD, SDLK_9, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_9, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut10", - INPUT_KEYBOARD, SDLK_0, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_0, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut11", - INPUT_KEYBOARD, SDLK_MINUS, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_MINUS, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut12", - INPUT_KEYBOARD, SDLK_EQUALS, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_EQUALS, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut13", - INPUT_KEYBOARD, SDLK_BACKSPACE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_BACKSPACE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut14", - INPUT_KEYBOARD, SDLK_INSERT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_INSERT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut15", - INPUT_KEYBOARD, SDLK_HOME, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_HOME, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut16", - INPUT_KEYBOARD, SDLK_q, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_q, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut17", - INPUT_KEYBOARD, SDLK_w, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_w, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut18", - INPUT_KEYBOARD, SDLK_e, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_e, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut19", - INPUT_KEYBOARD, SDLK_r, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_r, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut20", - INPUT_KEYBOARD, SDLK_t, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_t, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut21", - INPUT_KEYBOARD, SDLK_y, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_y, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut22", - INPUT_KEYBOARD, SDLK_u, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_u, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut23", - INPUT_KEYBOARD, SDLK_i, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_i, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut24", - INPUT_KEYBOARD, SDLK_o, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_o, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut25", - INPUT_KEYBOARD, SDLK_p, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_p, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut26", - INPUT_KEYBOARD, SDLK_LEFTBRACKET, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_LEFTBRACKET, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut27", - INPUT_KEYBOARD, SDLK_RIGHTBRACKET, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_RIGHTBRACKET, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut28", - INPUT_KEYBOARD, SDLK_BACKSLASH, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_BACKSLASH, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut29", - INPUT_KEYBOARD, SDLK_a, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_a, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut30", - INPUT_KEYBOARD, SDLK_s, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_s, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut31", - INPUT_KEYBOARD, SDLK_d, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_d, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut32", - INPUT_KEYBOARD, SDLK_f, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_f, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut33", - INPUT_KEYBOARD, SDLK_g, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_g, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut34", - INPUT_KEYBOARD, SDLK_h, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_h, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut35", - INPUT_KEYBOARD, SDLK_j, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_j, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut36", - INPUT_KEYBOARD, SDLK_k, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_k, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut37", - INPUT_KEYBOARD, SDLK_l, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_l, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut38", - INPUT_KEYBOARD, SDLK_SEMICOLON, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_SEMICOLON, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut39", - INPUT_KEYBOARD, SDLK_QUOTE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_QUOTE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut40", - INPUT_KEYBOARD, SDLK_z, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_z, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut41", - INPUT_KEYBOARD, SDLK_x, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_x, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut42", - INPUT_KEYBOARD, SDLK_c, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_c, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut43", - INPUT_KEYBOARD, SDLK_v, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_v, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut44", - INPUT_KEYBOARD, SDLK_b, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_b, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut45", - INPUT_KEYBOARD, SDLK_n, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_n, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut46", - INPUT_KEYBOARD, SDLK_m, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_m, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut47", - INPUT_KEYBOARD, SDLK_COMMA, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_COMMA, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyOutfitShortcut48", - INPUT_KEYBOARD, SDLK_PERIOD, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_PERIOD, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_OUTFIT, &ActionManager::outfit, Input::KEY_NO_VALUE, 100, COND_GAME}, {"keyMoveToPointShortcut1", - INPUT_KEYBOARD, SDLK_1, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_1, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut2", - INPUT_KEYBOARD, SDLK_2, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_2, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut3", - INPUT_KEYBOARD, SDLK_3, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_3, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut4", - INPUT_KEYBOARD, SDLK_4, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_4, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut5", - INPUT_KEYBOARD, SDLK_5, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_5, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut6", - INPUT_KEYBOARD, SDLK_6, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_6, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut7", - INPUT_KEYBOARD, SDLK_7, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_7, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut8", - INPUT_KEYBOARD, SDLK_8, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_8, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut9", - INPUT_KEYBOARD, SDLK_9, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_9, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut10", - INPUT_KEYBOARD, SDLK_0, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_0, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut11", - INPUT_KEYBOARD, SDLK_MINUS, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_MINUS, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut12", - INPUT_KEYBOARD, SDLK_EQUALS, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_EQUALS, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut13", - INPUT_KEYBOARD, SDLK_BACKSPACE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_BACKSPACE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut14", - INPUT_KEYBOARD, SDLK_INSERT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_INSERT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut15", - INPUT_KEYBOARD, SDLK_HOME, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_HOME, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut16", - INPUT_KEYBOARD, SDLK_q, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_q, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut17", - INPUT_KEYBOARD, SDLK_w, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_w, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut18", - INPUT_KEYBOARD, SDLK_e, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_e, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut19", - INPUT_KEYBOARD, SDLK_r, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_r, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut20", - INPUT_KEYBOARD, SDLK_t, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_t, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut21", - INPUT_KEYBOARD, SDLK_y, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_y, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut22", - INPUT_KEYBOARD, SDLK_u, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_u, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut23", - INPUT_KEYBOARD, SDLK_i, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_i, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut24", - INPUT_KEYBOARD, SDLK_o, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_o, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut25", - INPUT_KEYBOARD, SDLK_p, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_p, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut26", - INPUT_KEYBOARD, SDLK_LEFTBRACKET, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_LEFTBRACKET, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut27", - INPUT_KEYBOARD, SDLK_RIGHTBRACKET, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_RIGHTBRACKET, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut28", - INPUT_KEYBOARD, SDLK_BACKSLASH, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_BACKSLASH, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut29", - INPUT_KEYBOARD, SDLK_a, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_a, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut30", - INPUT_KEYBOARD, SDLK_s, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_s, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut31", - INPUT_KEYBOARD, SDLK_d, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_d, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut32", - INPUT_KEYBOARD, SDLK_f, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_f, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut33", - INPUT_KEYBOARD, SDLK_g, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_g, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut34", - INPUT_KEYBOARD, SDLK_h, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_h, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut35", - INPUT_KEYBOARD, SDLK_j, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_j, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut36", - INPUT_KEYBOARD, SDLK_k, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_k, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut37", - INPUT_KEYBOARD, SDLK_l, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_l, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut38", - INPUT_KEYBOARD, SDLK_SEMICOLON, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_SEMICOLON, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut39", - INPUT_KEYBOARD, SDLK_QUOTE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_QUOTE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut40", - INPUT_KEYBOARD, SDLK_z, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_z, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut41", - INPUT_KEYBOARD, SDLK_x, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_x, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut42", - INPUT_KEYBOARD, SDLK_c, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_c, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut43", - INPUT_KEYBOARD, SDLK_v, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_v, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut44", - INPUT_KEYBOARD, SDLK_b, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_b, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut45", - INPUT_KEYBOARD, SDLK_n, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_n, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut46", - INPUT_KEYBOARD, SDLK_m, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_m, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut47", - INPUT_KEYBOARD, SDLK_COMMA, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_COMMA, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyMoveToPointShortcut48", - INPUT_KEYBOARD, SDLK_PERIOD, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_PERIOD, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_MOVETOPOINT, &ActionManager::moveToPoint, Input::KEY_MOVE_TO_POINT, 100, COND_GAME}, {"keyChat", - INPUT_KEYBOARD, SDLK_RETURN, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_RETURN, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_CHAT, &ActionManager::toggleChat, Input::KEY_NO_VALUE, 50, COND_NOINPUT | COND_NOAWAY | COND_NOMODAL | COND_INGAME}, {"keyChatScrollUp", - INPUT_KEYBOARD, SDLK_PAGEUP, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_PAGEUP, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::scrollChatUp, Input::KEY_NO_VALUE, 50, COND_DEFAULT | COND_INGAME}, {"keyChatScrollDown", - INPUT_KEYBOARD, SDLK_PAGEDOWN, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_PAGEDOWN, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::scrollChatDown, Input::KEY_NO_VALUE, 50, COND_DEFAULT | COND_INGAME}, {"keyChatPrevTab", - INPUT_KEYBOARD, SDLK_KP7, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP7, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::prevChatTab, Input::KEY_NO_VALUE, 50, COND_NOINPUT | COND_INGAME}, {"keyChatNextTab", - INPUT_KEYBOARD, SDLK_KP9, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP9, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::nextChatTab, Input::KEY_NO_VALUE, 50, COND_NOINPUT | COND_INGAME}, {"keyChatCloseTab", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::closeChatTab, Input::KEY_NO_VALUE, 50, COND_NOINPUT | COND_INGAME}, {"keyChatPrevHistory", - INPUT_KEYBOARD, SDLK_KP7, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP7, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_CHAT | Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT | COND_INGAME}, {"keyChatNextHistory", - INPUT_KEYBOARD, SDLK_KP9, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP9, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_CHAT | Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT | COND_INGAME}, {"keyIgnoreInput1", #ifdef USE_SDL2 - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, #else - INPUT_KEYBOARD, SDLK_LSUPER, + InputType::KEYBOARD, SDLK_LSUPER, #endif - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::ignoreInput, Input::KEY_NO_VALUE, 500, COND_DEFAULT}, {"keyIgnoreInput2", #ifdef USE_SDL2 - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, #else - INPUT_KEYBOARD, SDLK_RSUPER, + InputType::KEYBOARD, SDLK_RSUPER, #endif - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::ignoreInput, Input::KEY_NO_VALUE, 500, COND_DEFAULT}, {"keyDirectUp", - INPUT_KEYBOARD, SDLK_l, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_l, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::directUp, Input::KEY_NO_VALUE, 50, COND_GAME}, {"keyDirectDown", - INPUT_KEYBOARD, SDLK_SEMICOLON, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_SEMICOLON, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::directDown, Input::KEY_NO_VALUE, 50, COND_GAME}, {"keyDirectLeft", - INPUT_KEYBOARD, SDLK_k, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_k, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::directLeft, Input::KEY_NO_VALUE, 50, COND_GAME}, {"keyDirectRight", - INPUT_KEYBOARD, SDLK_QUOTE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_QUOTE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::directRight, Input::KEY_NO_VALUE, 50, COND_GAME}, {"keyCrazyMoves", - INPUT_KEYBOARD, SDLK_SLASH, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_SLASH, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::crazyMoves, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keyChangeCrazyMoveType", - INPUT_KEYBOARD, SDLK_BACKSLASH, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_BACKSLASH, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeCrazyMove, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED | COND_EMODS}, {"keyQuickDrop", - INPUT_KEYBOARD, SDLK_y, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_y, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::dropItem0, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keyQuickDropN", - INPUT_KEYBOARD, SDLK_u, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_u, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::dropItem, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keySwitchQuickDrop", - INPUT_KEYBOARD, SDLK_i, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_i, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::switchQuickDrop, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keyMagicInma1", - INPUT_KEYBOARD, SDLK_c, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_c, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::heal, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keyMagicItenplz", - INPUT_KEYBOARD, SDLK_m, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_m, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::itenplz, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keyMagicAttack", - INPUT_KEYBOARD, SDLK_b, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_b, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::magicAttack, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keySwitchMagicAttack", - INPUT_KEYBOARD, SDLK_COMMA, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_COMMA, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeMagicAttack, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED | COND_EMODS}, {"keySwitchPvpAttack", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changePvpMode, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED | COND_EMODS}, {"keyInvertDirection", - INPUT_KEYBOARD, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeMoveType, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED | COND_EMODS}, {"keyChangeAttackWeaponType", - INPUT_KEYBOARD, SDLK_g, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_g, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeAttackWeaponType, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED | COND_EMODS}, {"keyChangeAttackType", - INPUT_KEYBOARD, SDLK_END, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_END, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeAttackType, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED | COND_EMODS}, {"keyChangeFollowMode", - INPUT_KEYBOARD, SDLK_KP1, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP1, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeFollowMode, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED | COND_EMODS}, {"keyChangeImitationMode", - INPUT_KEYBOARD, SDLK_KP4, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP4, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeImitationMode, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED | COND_EMODS}, {"keyDisableGameModifiers", - INPUT_KEYBOARD, SDLK_KP8, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP8, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeGameModifier, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keyChangeAudio", - INPUT_KEYBOARD, SDLK_KP3, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP3, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::changeAudio, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keyAway", - INPUT_KEYBOARD, SDLK_KP2, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP2, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::away, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED}, {"keyRightClick", - INPUT_KEYBOARD, SDLK_TAB, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_TAB, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::mouseClick, Input::KEY_NO_VALUE, 50, COND_NOINPUT | COND_NOAWAY | COND_NOMODAL | COND_INGAME}, {"keyCameraMode", - INPUT_KEYBOARD, SDLK_KP_PLUS, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP_PLUS, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::camera, Input::KEY_NO_VALUE, 50, COND_GAME | COND_VALIDSPEED | COND_EMODS}, {"keyMod", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, 0, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIUp", - INPUT_KEYBOARD, SDLK_UP, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_UP, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIDown", - INPUT_KEYBOARD, SDLK_DOWN, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_DOWN, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUILeft", - INPUT_KEYBOARD, SDLK_LEFT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_LEFT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIRight", - INPUT_KEYBOARD, SDLK_RIGHT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_RIGHT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUISelect", - INPUT_KEYBOARD, SDLK_SPACE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_SPACE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUISelect2", - INPUT_KEYBOARD, SDLK_RETURN, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_RETURN, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUICancel", - INPUT_KEYBOARD, SDLK_ESCAPE, + InputType::KEYBOARD, SDLK_ESCAPE, #if defined(USE_SDL2) && defined(ANDROID) - INPUT_KEYBOARD, SDLK_AC_BACK, + InputType::KEYBOARD, SDLK_AC_BACK, #else - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, #endif Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIHome", - INPUT_KEYBOARD, SDLK_HOME, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_HOME, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIEnd", - INPUT_KEYBOARD, SDLK_END, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_END, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIDelete", - INPUT_KEYBOARD, SDLK_DELETE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_DELETE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIBackSpace", - INPUT_KEYBOARD, SDLK_BACKSPACE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_BACKSPACE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUITab", - INPUT_KEYBOARD, SDLK_TAB, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_TAB, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIPageUp", - INPUT_KEYBOARD, SDLK_PAGEUP, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_PAGEUP, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIPageDown", - INPUT_KEYBOARD, SDLK_PAGEDOWN, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_PAGEDOWN, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIInsert", - INPUT_KEYBOARD, SDLK_INSERT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_INSERT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIMod", - INPUT_KEYBOARD, SDLK_LSHIFT, - INPUT_KEYBOARD, SDLK_RSHIFT, + InputType::KEYBOARD, SDLK_LSHIFT, + InputType::KEYBOARD, SDLK_RSHIFT, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keySafeVideo", - INPUT_KEYBOARD, SDLK_KP_MINUS, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_KP_MINUS, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::safeVideoMode, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyStopSit", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::stopSit, Input::KEY_NO_VALUE, 50, COND_DEFAULT | COND_INGAME}, {"keyShowKeyboard", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::showKeyboard, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyShowWindows", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::showWindows, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyChatMod", - INPUT_KEYBOARD, SDLK_LSHIFT, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_LSHIFT, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT | COND_INGAME}, {"keyMoveForward", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::moveForward, Input::KEY_NO_VALUE, 50, COND_ARROWKEYS}, {"keyGUICtrl", - INPUT_KEYBOARD, SDLK_LCTRL, - INPUT_KEYBOARD, SDLK_RCTRL, + InputType::KEYBOARD, SDLK_LCTRL, + InputType::KEYBOARD, SDLK_RCTRL, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIb", - INPUT_KEYBOARD, SDLK_b, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_b, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIc", - INPUT_KEYBOARD, SDLK_c, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_c, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUId", - INPUT_KEYBOARD, SDLK_d, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_d, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIe", - INPUT_KEYBOARD, SDLK_e, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_e, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIf", - INPUT_KEYBOARD, SDLK_f, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_f, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIh", - INPUT_KEYBOARD, SDLK_h, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_h, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIk", - INPUT_KEYBOARD, SDLK_k, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_k, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIu", - INPUT_KEYBOARD, SDLK_u, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_u, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIv", - INPUT_KEYBOARD, SDLK_v, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_v, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIw", - INPUT_KEYBOARD, SDLK_w, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_w, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyShortcutsPrevTab", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::prevShortcutsTab, Input::KEY_NO_VALUE, 50, COND_NOINPUT | COND_INGAME}, {"keyShortcutsNextTab", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::nextShortcutsTab, Input::KEY_NO_VALUE, 50, COND_NOINPUT | COND_INGAME}, {"keyCommandsPrevTab", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::prevCommandsTab, Input::KEY_NO_VALUE, 50, COND_NOINPUT | COND_INGAME}, {"keyCommandsNextTab", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::nextCommandsTab, Input::KEY_NO_VALUE, 50, COND_NOINPUT | COND_INGAME}, {"keyOpenTrade", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT, &ActionManager::openTrade, Input::KEY_NO_VALUE, 50, COND_GAME | COND_NOTARGET}, {"keyGUIF1", - INPUT_KEYBOARD, SDLK_F1, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F1, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIF2", - INPUT_KEYBOARD, SDLK_F2, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F2, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIF3", - INPUT_KEYBOARD, SDLK_F3, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F3, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIF4", - INPUT_KEYBOARD, SDLK_F4, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F4, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIF5", - INPUT_KEYBOARD, SDLK_F5, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F5, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIF6", - INPUT_KEYBOARD, SDLK_F6, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F6, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIF7", - INPUT_KEYBOARD, SDLK_F7, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F7, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIF8", - INPUT_KEYBOARD, SDLK_F8, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F8, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIF9", - INPUT_KEYBOARD, SDLK_F9, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F9, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIF10", - INPUT_KEYBOARD, SDLK_F10, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F10, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIF11", - INPUT_KEYBOARD, SDLK_F11, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F11, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyGUIF12", - INPUT_KEYBOARD, SDLK_F12, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::KEYBOARD, SDLK_F12, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_GUICHAN | Input::GRP_CHAT, nullptr, Input::KEY_NO_VALUE, 50, COND_DEFAULT}, {"keyWindowAbout", - INPUT_UNKNOWN, Input::KEY_NO_VALUE, - INPUT_UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, + InputType::UNKNOWN, Input::KEY_NO_VALUE, Input::GRP_DEFAULT | Input::GRP_GUI, &ActionManager::aboutWindowShow, Input::KEY_NO_VALUE, 50, |