Пользователь
- Регистрация
- 26.11.2014
- Сообщения
- 25
- Реакции
- 0
- Баллы
- 655
- Автор
- #1
Создание AutoHotKey скрипта для облегчения игрового процесса!
AutoHotKey - программа для облегчения ввода команд и выполнения действий в играх и другом софте.
В этой статье будут описаны принцип действия и часто используемые команды.
В этой статье будут описаны принцип действия и часто используемые команды.
[b:8n18ibjb][color=#FF8000:8n18ibjb]Mackson_Kenswere[/color][/b] написал(а):ВНИМАНИЕ! Если вы собрались создавать свой скрипт, то важно помнить, что на операционной системе Windows XP используется "SendPlay", а на ОС Windows 7, Vista используется "SendInput".
Далее в статье будет упоминаться понятие бинд - это значит установка быстрого ввода команды на какую-либо клавишу. Перечисленные ниже клавиши позволяют создать бинд самостоятельно или при сочетании с буквами, цифрами и другими клавишами.
ctrl (или ^)
shift (или +)
Alt (или !)
Space
Tab
Enter
Escape(или Esc)
Backspace(или BS)
Delete(или Del)
Insert(или Ins)
Home
PgUp
PgDn
Up
Down
Left
Right
shift (или +)
Alt (или !)
Space
Tab
Enter
Escape(или Esc)
Backspace(или BS)
Delete(или Del)
Insert(или Ins)
Home
PgUp
PgDn
Up
Down
Left
Right
Все перечисленные ниже клавиши так же могут быть записаны в скрипт в том виде, в каком перечислены.
Numlock ON
- Numlock OFF
- NumpadIns
- NumpadEnd
- NumpadDown
- NumpadPgDn
- NumpadLeft
- NumpadClear
- NumpadRight
- NumpadHome
- NumpadUp
- NumpadPgUp
- NumpadDel
- NumpadDiv(/)
- NumpadMult(*)
- NumpadAdd(+)
- NumpadSub(-)
- NumpadEnter
Пример записи простого бинда для быстрого ввода команды!?
[b:8n18ibjb][color=#FF8000:8n18ibjb]Mackson_Kenswere[/color][/b] написал(а):ВНИМАНИЕ! Если Вы применяете скрипт для SA-MP, то стоит перед созданием скрипта в самом начале вписать код #IfWinActive GTA:SA:MP,он указывает на то, чтоб скрипт работал лишь тогда, когда Вы находитесь в игре. Данный код полезен когда Вы используете циклы и во время работы его сворачиваете игру, цикл не останавливается, а начинает работать в других активных программах вашего компьютера.
[b:8n18ibjb][color=#0080FF:8n18ibjb]BIND[/color][/b] написал(а):F1::SendPlay {F6}/fill{enter}
2) :: - обязательный синтаксис для создания бинда.
3) SendPlay - код скрипта задающая ввод текста.
4) {F6} - код скрипта задающий автонажатие клавиши F6 (в SA-MP это открытие консоли для вписывания команды).
5) /fill - вводимый текст или команда.
6) Sleep - задает интервал между вводимым текстом
7) {enter} - код скрипта задающая автонажатие клавиши Enter для автоматического ввода написанной команды.
[b:8n18ibjb][color=#FF8000:8n18ibjb]Mackson_Kenswere[/color][/b] написал(а):На месте F1 может быть любая клавиша из списка перечисленных вначале, синтаксис написанный во втором пункте должен присутствовать обязательно. Код скрипта "SendPlay" может быть заменена на "SendInput" если вы используете ОС Windows Vista или Seven.
В противном случае скрипт не будет работать.
Имитация нажатия кнопки F6 так же должна присутствовать в скрипте если Вы пишите его специально для SA-MP. Hиже будут перечислены все коды имитации нажатия клавиш.
Последовательный ввод команд сервера с биндом на одну клавишу?
[b:8n18ibjb][color=#0080FF:8n18ibjb]БИНД[/color][/b] написал(а):F1::
{
SendPlay {F6}/s Раз{!}{enter}
Sleep 1000
SendPlay {F6}/s Два{!}{enter}
Sleep 1000
SendPlay {F6}/s Три{!}{enter}
Sleep 1000
SendPlay {F6}/s Go Go Go{!}{enter}
{
return
В данном скрипте показан код для установки бинда с вводом нескольких команд с интервалом по времени. Команда скрипта "Sleep 1000" означает, что ввод следующей команды будет осуществляться с паузой в 1 секунду. Исчисление производится в доле секундах следовательно одна секунда ровна тысячи доле секундам. Если в водимом тексте Вашего скрипта присутствует восклицательный знак, нужно его заключить в фигурные скобки как обозначено в примере. Так как без заключения в скобки восклицательный знак скрипта будет опознаваться как команда скрипта и при выводе текста в чат, восклицательного знака не будет. Команда "return" возвращает цикл для последующего его использования. Так же обязательна к написанию.