Изменение настроек: Клавиатура
Настройки управления
Эти файлы настроек управления могут быть изменены с целью модифицирования вкладки настроек клавиатуры и её диалоговых окон.
- resource/OptionsSubKeyboard.res
- resource/OptionsSubKeyboardAdvancedDlg.res
scripts/kb_def.lst
Этот файл больше не используется; используйте cfg/config_default.cfg для настройки раскладки клавиатуры по умолчанию.
cfg/config_default.cfg
Config_default.cfg предоставляет в играх на движке Source не все архивные ConVar ы, в отличие от config.cfg. Вместо это используется Config_default.cfg из source engine.gcf. Config_default.cfg из source engine.gcf выглядит так:
// YWB 10/10/03: // If the user doesn't have a config.cfg when they run, // this gets executed the first time they run the engine // It doesn't execute if they have their own config.cfg saved out. unbindall bind "ESCAPE" "cancelselect" bind "`" "toggleconsole" bind "w" "+forward" bind "s" "+back" bind "a" "+moveleft" bind "d" "+moveright" bind "SPACE" "+jump" bind "CTRL" "+duck" bind "e" "+use" bind "c" "impulse 50" bind "r" "+reload" bind "ALT" "+walk" bind "SHIFT" "+speed" bind "MOUSE1" "+attack" bind "MOUSE2" "+attack2" bind "f" "impulse 100" bind "1" "slot1" bind "2" "slot2" bind "3" "slot3" bind "4" "slot4" bind "5" "slot5" bind "6" "slot6" bind "7" "slot7" bind "MWHEELUP" "invprev" bind "MWHEELDOWN" "invnext" bind "q" "lastinv" bind "F5" "jpeg" bind "F6" "save quick" bind "F9" "load quick" bind "PAUSE" "pause" bind "z" "+zoom" bind "g" "phys_swap"
scripts/kb_act.lst
Клавиатурные команды ссылаются на команды и заголовки в файле scripts/kb_act.lst, которые появляются в настройках во вкладке клавиатура в самой игре.
Для создания заголовка, используйте следующий формат в файле kb_act.lst:
"blank" "==========================" "blank" "#Localized_String" "blank" "=========================="
Используемые лексические комманды должны быть также указаны в локализованом файле мода (т.е. valve_russian.txt).
Вот как выглядит kb_act.lst из файла source engine.gcf:
"blank" "==========================" "blank" "#Valve_Movement_Title" "blank" "==========================" "+forward" "#Valve_Move_Forward" "+back" "#Valve_Move_Back" "+moveleft" "#Valve_Move_Left" "+moveright" "#Valve_Move_Right" "+speed" "#Valve_Sprint" "+jump" "#Valve_Jump" "+duck" "#Valve_Duck" "blank" "==========================" "blank" "#Valve_Combat_Title" "blank" "==========================" "+attack" "#Valve_Primary_Attack" "+attack2" "#Valve_Secondary_Attack" "+reload" "#Valve_Reload_Weapon" "+use" "#Valve_Use_Items" "phys_swap" "#Valve_Gravity_Gun" "impulse 100" "#Valve_Flashlight" "+zoom" "#Valve_Suit_Zoom" "impulse 50" "#Valve_Commander_Mode" "slot1" "#Valve_Weapon_Category_1" "slot2" "#Valve_Weapon_Category_2" "slot3" "#Valve_Weapon_Category_3" "slot4" "#Valve_Weapon_Category_4" "slot5" "#Valve_Weapon_Category_5" "slot6" "#Valve_Weapon_Category_6" "invnext" "#Valve_Next_Weapon" "invprev" "#Valve_Previous_Weapon" "lastinv" "#Valve_Last_Weapon_Used" "blank" "==========================" "blank" "#Valve_Miscellaneous_Title" "blank" "==========================" "incrementvar closecaption 0 1 1" "#Valve_CC_Toggle" "jpeg" "#Valve_Take_Screen_Shot" "save quick" "#Valve_Quick_Save" "load quick" "#Valve_Quick_Load" "pause" "#Valve_Pause_Game" "quit" "#Valve_Quit_Game" "blank" "==========================" "blank" "#Valve_Miscellaneous_Keyboard_Keys_Title" "blank" "==========================" "+walk" "#Valve_Walk" "+left" "#Valve_Turn_Left" "+right" "#Valve_Turn_Right" "+moveup" "#Valve_Swim_Up" "+movedown" "#Valve_Swim_Down" "+lookup" "#Valve_Look_Up" "+lookdown" "#Valve_Look_Down" "+strafe" "#Valve_Strafe_Modifier" "+klook" "#Valve_Keyboard_Look_Modifier"
Как вы видите, формат добавления команд в список очень прост. Также запомните, что команды, начинающиеся на "+" создают аналогичные "-" команды при отжатии клавиши. Например, при создании команды "+camera" и привязки её к клавише "TAB". Когда вы нажмёте TAB, проверьте консоль и вы увидите:
Unknown command: +camera Unknown command: -camera
Не забывайте об этом, когда будете создавать собственные клавиатурные команды.