diff options
Diffstat (limited to 'src/keyboardconfig.cpp')
-rw-r--r-- | src/keyboardconfig.cpp | 982 |
1 files changed, 1 insertions, 981 deletions
diff --git a/src/keyboardconfig.cpp b/src/keyboardconfig.cpp index 01f9a7ddd..9552a0844 100644 --- a/src/keyboardconfig.cpp +++ b/src/keyboardconfig.cpp @@ -25,6 +25,7 @@ #include "configuration.h" #include "inputevent.h" #include "inputmanager.h" +#include "keyboarddata.h" #include "logger.h" #include "gui/sdlinput.h" @@ -51,987 +52,6 @@ class KeyFunctor } keySorter; -struct KeyData -{ - const char *configField; - int defaultValue; - std::string caption; - int grp; - ActionFuncPtr action; - int modKeyIndex; - int priority; - int condition; -}; - -// keyData must be in same order as enum keyAction. -static KeyData const keyData[KeyboardConfig::KEY_TOTAL] = { - {"", 0, - N_("Basic Keys"), - 0, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 0, - 0}, - {"keyMoveUp", SDLK_UP, - N_("Move Up"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::moveUp, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME2}, - {"keyMoveDown", SDLK_DOWN, - N_("Move Down"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::moveDown, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME2}, - {"keyMoveLeft", SDLK_LEFT, - N_("Move Left"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::moveLeft, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME}, - {"keyMoveRight", SDLK_RIGHT, - N_("Move Right"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::moveRight, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME}, - {"keyAttack", SDLK_LCTRL, - N_("Attack"), - KeyboardConfig::GRP_DEFAULT, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyTargetAttack", SDLK_x, - N_("Target & Attack"), - KeyboardConfig::GRP_DEFAULT, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyMoveToTarget", SDLK_v, - N_("Move to Target"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::moveToTarget, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keyChangeMoveToTarget", SDLK_PERIOD, - N_("Change Move to Target type"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeMoveToTarget, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED | COND_EMODS}, - {"keyMoveToHome", SDLK_d, - N_("Move to Home location"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::moveToHome, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keySetHome", SDLK_KP5, - N_("Set home location"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::setHome, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keyMoveToPoint", SDLK_RSHIFT, - N_("Move to navigation point"), - KeyboardConfig::GRP_DEFAULT, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyTalk", SDLK_t, - N_("Talk"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::talk, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME}, - {"keyTarget", SDLK_LSHIFT, - N_("Stop Attack"), - KeyboardConfig::GRP_DEFAULT, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME}, - {"keyUnTarget", KeyboardConfig::KEY_NO_VALUE, - N_("Untarget"), - KeyboardConfig::GRP_DEFAULT, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyTargetClosest", SDLK_a, - N_("Target Closest"), - KeyboardConfig::GRP_DEFAULT, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyTargetNPC", SDLK_n, - N_("Target NPC"), - KeyboardConfig::GRP_DEFAULT, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyTargetPlayer", SDLK_q, - N_("Target Player"), - KeyboardConfig::GRP_DEFAULT, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyPickup", SDLK_z, - N_("Pickup"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::pickup, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyChangePickupType", SDLK_o, - N_("Change Pickup Type"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changePickupType, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED | COND_EMODS}, - {"keyHideWindows", SDLK_h, - N_("Hide Windows"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::hideWindows, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyBeingSit", SDLK_s, - N_("Sit"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::sit, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyScreenshot", SDLK_p, - N_("Screenshot"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::screenshot, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyTrade", SDLK_r, - N_("Enable/Disable Trading"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeTrade, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyPathfind", SDLK_f, - N_("Change Map View Mode"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeMapMode, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET | COND_EMODS}, - {"keyOK", SDLK_SPACE, - N_("Select OK"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::ok, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOMODAL | COND_NOAWAY | COND_NONPCINPUT}, - {"keyQuit", SDLK_ESCAPE, - N_("Quit"), - KeyboardConfig::GRP_DEFAULT, -// nullptr, - &ActionManager::quit, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"", 0, - N_("Shortcuts Keys"), - 0, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyShortcutsKey", SDLK_MENU, - N_("Item Shortcuts Key"), - KeyboardConfig::GRP_DEFAULT, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyShortcut1", SDLK_1, - strprintf(N_("Item Shortcut %d"), 1), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut2", SDLK_2, - strprintf(N_("Item Shortcut %d"), 2), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut3", SDLK_3, - strprintf(N_("Item Shortcut %d"), 3), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut4", SDLK_4, - strprintf(N_("Item Shortcut %d"), 4), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut5", SDLK_5, - strprintf(N_("Item Shortcut %d"), 5), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut6", SDLK_6, - strprintf(N_("Item Shortcut %d"), 6), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut7", SDLK_7, - strprintf(N_("Item Shortcut %d"), 7), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut8", SDLK_8, - strprintf(N_("Item Shortcut %d"), 8), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut9", SDLK_9, - strprintf(N_("Item Shortcut %d"), 9), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut10", SDLK_0, - strprintf(N_("Item Shortcut %d"), 10), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut11", SDLK_MINUS, - strprintf(N_("Item Shortcut %d"), 11), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut12", SDLK_EQUALS, - strprintf(N_("Item Shortcut %d"), 12), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut13", SDLK_BACKSPACE, - strprintf(N_("Item Shortcut %d"), 13), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut14", SDLK_INSERT, - strprintf(N_("Item Shortcut %d"), 14), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut15", SDLK_HOME, - strprintf(N_("Item Shortcut %d"), 15), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut16", KeyboardConfig::KEY_NO_VALUE, - strprintf(N_("Item Shortcut %d"), 16), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut17", KeyboardConfig::KEY_NO_VALUE, - strprintf(N_("Item Shortcut %d"), 17), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut18", KeyboardConfig::KEY_NO_VALUE, - strprintf(N_("Item Shortcut %d"), 18), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut19", KeyboardConfig::KEY_NO_VALUE, - strprintf(N_("Item Shortcut %d"), 19), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyShortcut20", KeyboardConfig::KEY_NO_VALUE, - strprintf(N_("Item Shortcut %d"), 20), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::shortcut, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"", 0, - N_("Windows Keys"), - 0, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyWindowHelp", SDLK_F1, - N_("Help Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::helpWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowStatus", SDLK_F2, - N_("Status Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::statusWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowInventory", SDLK_F3, - N_("Inventory Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::inventoryWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowEquipment", SDLK_F4, - N_("Equipment Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::equipmentWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowSkill", SDLK_F5, - N_("Skill Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::skillDialogShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowMinimap", SDLK_F6, - N_("Minimap Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::minimapWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowChat", SDLK_F7, - N_("Chat Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::chatWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowShortcut", SDLK_F8, - N_("Item Shortcut Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::shortcutWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowSetup", SDLK_F9, - N_("Setup Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::setupWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOTARGET | COND_NOINPUT | COND_ENABLED}, - {"keyWindowDebug", SDLK_F10, - N_("Debug Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::debugWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowSocial", SDLK_F11, - N_("Social Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::socialWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowEmoteBar", SDLK_F12, - N_("Emote Shortcut Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::emoteShortcutWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowOutfit", SDLK_BACKQUOTE, - N_("Outfits Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::outfitWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowShop", -1, - N_("Shop Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::shopWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowDrop", SDLK_w, - N_("Quick drop Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::dropShortcutWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowKills", SDLK_e, - N_("Kill Stats Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::killStatsWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowSpells", SDLK_j, - N_("Commands Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::spellShortcutWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowBotChecker", SDLK_LEFTBRACKET, - N_("Bot Checker Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::botcheckerWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowOnline", KeyboardConfig::KEY_NO_VALUE, - N_("Who Is Online Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::whoIsOnlineWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keyWindowDidYouKnow", KeyboardConfig::KEY_NO_VALUE, - N_("Did you know Window"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::didYouKnowWindowShow, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_NOTARGET}, - {"keySocialPrevTab", KeyboardConfig::KEY_NO_VALUE, - N_("Previous Social Tab"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::prevSocialTab, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOINPUT}, - {"keySocialNextTab", KeyboardConfig::KEY_NO_VALUE, - N_("Next Social Tab"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::nextSocialTab, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOINPUT}, - {"", 0, - N_("Emotes Keys"), - 0, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keySmilie", SDLK_LALT, - N_("Smilie"), - KeyboardConfig::GRP_DEFAULT, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyEmoteShortcut1", SDLK_1, - strprintf(N_("Emote Shortcut %d"), 1), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut2", SDLK_2, - strprintf(N_("Emote Shortcut %d"), 2), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut3", SDLK_3, - strprintf(N_("Emote Shortcut %d"), 3), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut4", SDLK_4, - strprintf(N_("Emote Shortcut %d"), 4), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut5", SDLK_5, - strprintf(N_("Emote Shortcut %d"), 5), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut6", SDLK_6, - strprintf(N_("Emote Shortcut %d"), 6), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut7", SDLK_7, - strprintf(N_("Emote Shortcut %d"), 7), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut8", SDLK_8, - strprintf(N_("Emote Shortcut %d"), 8), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut9", SDLK_9, - strprintf(N_("Emote Shortcut %d"), 9), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut10", SDLK_0, - strprintf(N_("Emote Shortcut %d"), 10), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut11", SDLK_MINUS, - strprintf(N_("Emote Shortcut %d"), 11), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut12", SDLK_EQUALS, - strprintf(N_("Emote Shortcut %d"), 12), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut13", SDLK_BACKSPACE, - strprintf(N_("Emote Shortcut %d"), 13), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut14", SDLK_INSERT, - strprintf(N_("Emote Shortcut %d"), 14), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut15", SDLK_HOME, - strprintf(N_("Emote Shortcut %d"), 15), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut16", SDLK_q, - strprintf(N_("Emote Shortcut %d"), 16), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut17", SDLK_w, - strprintf(N_("Emote Shortcut %d"), 17), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut18", SDLK_e, - strprintf(N_("Emote Shortcut %d"), 18), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut19", SDLK_r, - strprintf(N_("Emote Shortcut %d"), 19), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut20", SDLK_t, - strprintf(N_("Emote Shortcut %d"), 20), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut21", SDLK_y, - strprintf(N_("Emote Shortcut %d"), 21), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut22", SDLK_u, - strprintf(N_("Emote Shortcut %d"), 22), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut23", SDLK_i, - strprintf(N_("Emote Shortcut %d"), 23), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut24", SDLK_o, - strprintf(N_("Emote Shortcut %d"), 24), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut25", SDLK_p, - strprintf(N_("Emote Shortcut %d"), 25), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut26", SDLK_LEFTBRACKET, - strprintf(N_("Emote Shortcut %d"), 26), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut27", SDLK_RIGHTBRACKET, - strprintf(N_("Emote Shortcut %d"), 27), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut28", SDLK_BACKSLASH, - strprintf(N_("Emote Shortcut %d"), 28), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut29", SDLK_a, - strprintf(N_("Emote Shortcut %d"), 29), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut30", SDLK_s, - strprintf(N_("Emote Shortcut %d"), 30), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut31", SDLK_d, - strprintf(N_("Emote Shortcut %d"), 31), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut32", SDLK_f, - strprintf(N_("Emote Shortcut %d"), 32), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut33", SDLK_g, - strprintf(N_("Emote Shortcut %d"), 33), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut34", SDLK_h, - strprintf(N_("Emote Shortcut %d"), 34), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut35", SDLK_j, - strprintf(N_("Emote Shortcut %d"), 35), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut36", SDLK_k, - strprintf(N_("Emote Shortcut %d"), 36), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut37", SDLK_l, - strprintf(N_("Emote Shortcut %d"), 37), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut38", SDLK_SEMICOLON, - strprintf(N_("Emote Shortcut %d"), 38), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut39", SDLK_QUOTE, - strprintf(N_("Emote Shortcut %d"), 39), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut40", SDLK_z, - strprintf(N_("Emote Shortcut %d"), 40), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut41", SDLK_x, - strprintf(N_("Emote Shortcut %d"), 41), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut42", SDLK_c, - strprintf(N_("Emote Shortcut %d"), 42), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut43", SDLK_v, - strprintf(N_("Emote Shortcut %d"), 43), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut44", SDLK_b, - strprintf(N_("Emote Shortcut %d"), 44), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut45", SDLK_n, - strprintf(N_("Emote Shortcut %d"), 45), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut46", SDLK_m, - strprintf(N_("Emote Shortcut %d"), 46), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut47", SDLK_COMMA, - strprintf(N_("Emote Shortcut %d"), 47), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"keyEmoteShortcut48", SDLK_PERIOD, - strprintf(N_("Emote Shortcut %d"), 48), - KeyboardConfig::GRP_EMOTION, - &ActionManager::emote, - KeyboardConfig::KEY_NO_VALUE, 100, - COND_GAME}, - {"", 0, - N_("Outfits Keys"), - 0, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyWearOutfit", SDLK_RCTRL, N_("Wear Outfit"), - KeyboardConfig::GRP_DEFAULT, nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, COND_DEFAULT}, - {"keyCopyOutfit", SDLK_RALT, N_("Copy Outfit"), - KeyboardConfig::GRP_DEFAULT, nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, COND_DEFAULT}, - {"keyCopyEquipedOutfit", SDLK_RIGHTBRACKET, - N_("Copy equipped to Outfit"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::copyEquippedToOutfit, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"", 0, N_("Chat Keys"), 0, nullptr, KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyChat", SDLK_RETURN, - N_("Toggle Chat"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_CHAT, - &ActionManager::toggleChat, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME}, - {"keyChatScrollUp", SDLK_PAGEUP, - N_("Scroll Chat Up"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::scrollChatUp, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyChatScrollDown", SDLK_PAGEDOWN, - N_("Scroll Chat Down"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::scrollChatDown, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyChatPrevTab", SDLK_KP7, - N_("Previous Chat Tab"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::prevChatTab, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOINPUT}, - {"keyChatNextTab", SDLK_KP9, - N_("Next Chat Tab"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::nextChatTab, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOINPUT}, - {"keyChatCloseTab", KeyboardConfig::KEY_NO_VALUE, - N_("Close current Chat Tab"), - KeyboardConfig::GRP_DEFAULT | KeyboardConfig::GRP_GUI, - &ActionManager::closeChatTab, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOINPUT}, - {"keyChatPrevHistory", SDLK_KP7, N_("Previous chat line"), - KeyboardConfig::GRP_CHAT, nullptr, KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyChatNextHistory", SDLK_KP9, N_("Next chat line"), - KeyboardConfig::GRP_CHAT, nullptr, KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyAutoCompleteChat", SDLK_TAB, N_("Chat Auto Complete"), - KeyboardConfig::GRP_CHAT, nullptr, KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyDeActivateChat", SDLK_ESCAPE, N_("Deactivate Chat Input"), - KeyboardConfig::GRP_CHAT, nullptr, KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"", 0, N_("Other Keys"), 0, nullptr, KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyIgnoreInput1", SDLK_LSUPER, - N_("Ignore input 1"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::ignoreInput, - KeyboardConfig::KEY_NO_VALUE, 500, - COND_DEFAULT}, - {"keyIgnoreInput2", SDLK_RSUPER, - N_("Ignore input 2"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::ignoreInput, - KeyboardConfig::KEY_NO_VALUE, 500, - COND_DEFAULT}, - {"keyDirectUp", SDLK_l, - N_("Direct Up"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::directUp, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyDirectDown", SDLK_SEMICOLON, - N_("Direct Down"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::directDown, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyDirectLeft", SDLK_k, - N_("Direct Left"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::directLeft, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyDirectRight", SDLK_QUOTE, - N_("Direct Right"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::directRight, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT}, - {"keyCrazyMoves", SDLK_SLASH, - N_("Crazy moves"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::crazyMoves, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keyChangeCrazyMoveType", SDLK_BACKSLASH, - N_("Change Crazy Move mode"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeCrazyMove, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED | COND_EMODS}, - {"keyQuickDrop", SDLK_y, - N_("Quick Drop N Items from 0 slot"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::dropItem0, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keyQuickDropN", SDLK_u, - N_("Quick Drop N Items"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::dropItem, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keySwitchQuickDrop", SDLK_i, - N_("Switch Quick Drop Counter"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::switchQuickDrop, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keyMagicInma1", SDLK_c, - N_("Quick heal target or self"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::heal, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keyMagicItenplz", SDLK_m, - N_("Use #itenplz spell"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::itenplz, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keyMagicAttack", SDLK_b, - N_("Use magic attack"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::magicAttack, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keySwitchMagicAttack", SDLK_COMMA, - N_("Switch magic attack"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeMagicAttack, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED | COND_EMODS}, - {"keySwitchPvpAttack", KeyboardConfig::KEY_NO_VALUE, - N_("Switch pvp attack"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changePvpMode, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED | COND_EMODS}, - {"keyInvertDirection", SDLK_KP0, - N_("Change move type"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeMoveType, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED | COND_EMODS}, - {"keyChangeAttackWeaponType", SDLK_g, - N_("Change Attack Weapon Type"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeAttackWeaponType, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED | COND_EMODS}, - {"keyChangeAttackType", SDLK_END, - N_("Change Attack Type"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeAttackType, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED | COND_EMODS}, - {"keyChangeFollowMode", SDLK_KP1, - N_("Change Follow mode"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeFollowMode, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED | COND_EMODS}, - {"keyChangeImitationMode", SDLK_KP4, - N_("Change Imitation mode"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeImitationMode, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED | COND_EMODS}, - {"keyDisableGameModifiers", SDLK_KP8, - N_("Disable / Enable Game modifier keys"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeGameModifier, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keyChangeAudio", SDLK_KP3, - N_("On / Off audio"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::changeAudio, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keyAway", SDLK_KP2, - N_("Enable / Disable away mode"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::away, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED}, - {"keyRightClick", SDLK_TAB, - N_("Emulate right click from keyboard"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::mouseClick, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_NOINPUT | COND_NOAWAY | COND_NOMODAL}, - {"keyCameraMode", SDLK_KP_PLUS, - N_("Toggle camera mode"), - KeyboardConfig::GRP_DEFAULT, - &ActionManager::camera, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_GAME | COND_VALIDSPEED | COND_EMODS}, - {"keyMod", SDLK_LSHIFT, - N_("Modifier key"), - KeyboardConfig::GRP_GUI, - nullptr, - KeyboardConfig::KEY_NO_VALUE, 50, - COND_DEFAULT} -}; - void KeyboardConfig::init() { for (int i = 0; i < KEY_TOTAL; i++) |