Опубликовано: [scx]scv
, Включено: Jul-05-2003
"Пресс-энд-релиз" скрипты
В этой статье, вообщем-то моей первой по данной тематике, я хочу рассказать вам как сделать "прес-энд-релиз" скрипты. Название довольно странное, но если прочитать по английски, то все понятно. Механизм этих скриптов такой: при нажатии на клавишу выполняется некоторые команды, а как только эту клавишу отпускаешь - другие. Написание такого скрипта можно разбить на два шага.
1. Пишем алиасы:
alias "+press" "command1; command2" alias "-press" "command3; command4"
Обратите особое внимание на "+" и "-". Они должны обязательно ставится перед именем алиаса, иначе сделать "прес-энд-релиз" скрипт невозможно. Второй алиас не является обязательным, если при отпускании клавиши никаких действий совершать не надо.
2. Биндим клавишу
bind "?" "+press"
Вот вообщем-то и все. Осталось только привести пример. Я думаю всем понятен, а может и полезен, будет пример с показом радара:
alias "+radar" "drawradar" alias "-radar" "hideradar"
bind "q" "+radar"
В заключение, хотелось бы отметить, что скрипты "прес-энд-релиз" можно применять и для других целей, например дял покупки оружия(см. покупка оружия в разделе скрипты). Кроме того, аналогично работают некоторые встроенные команды в КС, в частности +forward
"Сайкл" скрипты
Такой вид скриптов используется чаще всего для изменения настроек. С помощью одной клавиши вы сможете проходить по циклу, а конце вернутся на начальную позицию. Ниже приведен синтаксис дял такого вида скриптов:
// начальное значение алиаса cycle alias cycle "cycle1"
// для каждой настройки назначаем команды и меняем алиас на следующий член цикла alias cycle1 "команда1; команда2; командаN; alias cycle cycle2"
//повторяем то же самое несколько раз alias cycle2 "команда1; команда2; командаN; alias cycle cycle3" alias cycle3 "команда1; команда2; командаN; alias cycle cycleN"
//возвращаемся на исходную настроку alias cycleN "команда1; команда2; командаN; alias cycle cycle1"
//биндим наше творение bind "?" "cycle"
Теперь нажимая на забинденную клавишу мы меняем либо вид игры, либо настройки, либо еще что-нибудь. Теперь приведем пример, сделаем сайкл-скрипт для такой важной команды, как sensitivity:
alias sens "sens1"
alias sens1 "sensitivity 4; developer 1; echo Sensitivity is 4; developer 0; alias sens sens2" alias sens2 "sensitivity 3; developer 1; echo Sensitivity is 3; developer 0; alias sens sens3" alias sens3 "sensitivity 2; developer 1; echo Sensitivity is 2; developer 0; alias sens sens4" alias sens4 "sensitivity 1; developer 1; echo Sensitivity is 1; developer 0; alias sens sens1"
bind "k" "sens"
"Мета" скрипты
Было ли когда-нибудь с вами такое, что вам не хватало клавиш на клавиатуре, потому что вы забиндили и всю покупку, и сообщения, и радиокоманды? А хотели ли вы забиндить на одну и ту же клавишу несколько разных команд? Если ваш ответ да, то эта статья для вас. В ней я расскажу вам как сделать мета-скрипты. Что ж, начнем с синтаксиса:
// Сделаем алиасы для каждой команды alias command1 "action1; wait; action1" //Алиас для первой команды// alias command2 "action1; wait; action2" //Алиас для второй...//
// Теперь выберем, что будет по дефолту
bind f1 "command1"
// Делаем мета-алиасы: alias +meta1 "bind f1 command2" // Эта команда запускается, когда нажата мета-клавиша alias -meta1 "bind f1 command1" // А эта, когда не нажата
// Назначаем мета-клавишу bind alt "+meta1"
Теперь приведем пример с радиосообщениями. При нажатии на кнопку "R" клавиши "S", "G", "F", "A" будут вызывать радиосообщения "Storm in Front", "Go, Go, Go", "Team, Fall Back" и "Affirmative" соответственно. Иначе они будут выполнять команды движения назад, выброс оружия, альтернатиная стрельба и стрейф влево.
// делаем алиасы для радиосообщений alias go "radio2; wait; menuselect 1; wait; wait; wait; slot10; wait; slo10" alias storm "radio2; wait; menuselect 5; wait; wait; wait; slot10; wait; slo10" alias aff "radio3; wait; menuselect 1; wait; wait; wait; slot10; wait; slo10" alias fal "radio2; wait; menuselect 2; wait; wait; wait; slot10; wait; slo10"
// биндим по дефолту bind s "+back" bind a "+moveleft" bind g "drop" bind f "+attack2"
// делаем мета-алиасы... alias +meta "bind g go; bind s storm; bind a aff; bind f fal" alias -meta "bind s +back; bind a +moveleft; bind g drop; bind f +attack2"
// биндим мета-клавишу bind r +meta
Вот вроде и все:)
Клавиши, на которые можно биндить
Клавиши букв:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Клавишы цифр:
1 2 3 4 5 6 7 8 9 0
Кнопки мыши:
MOUSE1 MOUSE2 MOUSE3 MOUSE4 AUX5 AUX6 MWHEELUP MWHEELDOWN
Кнопки джойстика:
JOY1 JOY2 JOY3 JOY4 AUX5 AUX6
Специальные клавиши:
Enter Space Shift Ctrl Pause Alt Backspace Tab Escape
Функциональные клавиши:
F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12
Клавиши прокручивания:
Ins Del Home End Pgdn Pgup
Стрелки:
Leftarrow Rightarrow Uparrow Downarrow
Клавиши цифровой панели:
kp_leftarrow kp_del kp_end kp_downarrow kp_pgup kp_ins kp_5 kp_plus kp_uparrow kp_enter kp_pgdn kp_rightarrow kp_slash kp_minus kp_home
Остальные:
, . / ; ' * [ ] - = ~
5.07.03 cszone.ru
|
|