Jump to content

ВНИМАНИЕ! Если вам не пришло письмо с активацией - проверьте папку "Спам".

TvinQ

Биндер [AutoHotKey] Кастомный AHK биндер-скрипт для V-MP

Recommended Posts

Кастомный AutoHotKey биндер-скрипт для V-MP

Версия 1.3 от 26 июня 2017 года: Custom_VMP_v1.3.ahk

Основная идея - гарантировать 100% корректное срабатывание биндов/скриптов в V-MP
Данный скрипт перехватывает нажатие клавиатурных кнопок от 1 до = 
Таким образом функциональность кнопок от 1 до = (оружие) пропадает в игре (оружие возможно выбрать на 1-0, зажав CTRL или SHIFT)
Однако в чате будет корректно вводиться цифра или символ при нажатии на кнопку так как ввод такого текста организован через заполнение буфера обмена
Иными словами, когда вы в чате набираете "100" - скрипт последовательно заполняет буфер обмена текстом "1", "0" и "0" и после каждого заполнения жмёт CTRL+V
На этом и основана работа данного скрипта в отличии от других (либо мне не известно о подобных)
Задержка ввода зависит от вашей системы, базовая - около 8/1000 секунды

ВАЖНО! Зажимать сначала вторую кнопку бинда скрипта!
К примеру, в случае "1+UP" это как раз и будет "стрелка вверх", то есть СНАЧАЛА ВЫ ЗАЖИМАЕТЕ Up А ПОТОМ НАЖИМАЕТЕ НА КНОПКУ 1
Тестировал, если делать наоборот - неслабо лагает или багуется.

Разрешается любое использование и изменение моего скрипта, однако я прошу оставлять мои комментарии (или изменять, если нашли другое решение)
Об обнаруженных проблемах пишите в данной теме
Отдельное спасибо: КВАС, Boris, Jo Vetur, JFox, Klon1x, Vladimir_Rupasov и Tommy_Ross. Часть идей была позаимствована у них, иногда без разрешения ¯\_(^_^)_/¯

UPD1. Релиз с багами
UPD2. В версии 0.2 реализованы только бинды 1+Up, 1+Left, 1+Down и 1+Right (иными словами 1+все стрелки).
UPD3. В версии 0.3 добавил бинды 2+Up, 2+Left, 2+Down и 2+Right 
UPD4. В версии 0.4 добавил бинды с 3 по = в сочентании со стрелками.
UPD5. Добавил тексты для всех биндов (в том числе общеиспользуемые команды).
UPD6. Мелкие правки
UPD7. Пофиксил баги множественного ввода.
UPD8. Добавлены бинды F1, F2, F3 и F4 в сочетании с 1 до =
UDP9. Изменил кнопку ввода с {T} на виртуальный код {vk54}. И мелкие правки.
UPD.10 Изменены бинды, увеличена общая задержка ввода бинда до 1/100 сек.
UPD.11 Мелкие правки.
UPD.12 Изменены бинды, мелкие правки.
UPD.13 Изменены бинды под актуальную версию VMP.

Понравился мой скрипт-биндер? Нажми на кнопку 2f3a3ac45e9d.jpg  

Edited by TvinQ
  • Like 23
  • Haha (+1) 1

Share this post


Link to post
Share on other sites

Персональные данные не ворует.
Отчёты VirusTotal:
v0.2 https://www.virustotal.com/ru/file/630540489b94818428157883ca6347ecd6c6d59bf040fe321f74870050256897/analysis/
v0.3 https://www.virustotal.com/ru/file/871c07fd482aabde8d30baca8c3824f388936f4b8e1e9f64142985d16dc72232/analysis/
v0.4 https://www.virustotal.com/ru/file/91ead3dbbd633a7324b116a2fa04d3cb6b283a0c4cd3024cd155093aafb8bed2/analysis/
v0.5 https://www.virustotal.com/ru/file/457ff16f30fb5488cb1eac021e1e5be2abb99f3c144c16223138529b349a1977/analysis/
v0.6 https://www.virustotal.com/ru/file/56f45223db82f15b19b36a97d76b79b752134065701473af537e51db07a1ca13/analysis/
v0.7 https://www.virustotal.com/ru/file/8d1b23458d904491f32e6a136f3e228f2ac08ad94b31a0c2d9d050e6bac122e0/analysis/
v0.8 https://www.virustotal.com/ru/file/02a1d71039336d2c09b86fc9d209d862836ca227bd94ecefe730ab8c22a9877a/analysis/
v0.9 https://www.virustotal.com/ru/file/4226ff6fd394aab0026b5b79480d5e90570907edebe018b675f98252d8d5a62f/analysis/
v1.0 https://www.virustotal.com/ru/file/a479876149e06a88e530f4126a7ed7cd7c4c39fa47e21ba22ce62f8897fadcb1/analysis/
v1.1 https://www.virustotal.com/ru/file/b4918a69b5b889f8834119a4ad757c463411ac713b24b4886210fe4db31c19fb/analysis/
v1.2 https://www.virustotal.com/ru/file/c0e536c81f4a19540e9d64ff8eab1774209896d7aa49f6fbb5333c82d0d3b45c/analysis/
v1.3 https://www.virustotal.com/ru/file/433a261306fa4d8670d8528cf6bbed8c8a8ed850432d9ced885a5f2e4292806e/analysis/

Исходный код:
v1.3

Скрытый текст

; Кастомный AHK биндер-скрипт для V-MP, версия 1.3 от 26 июня 2017 года
; Основная идея - гарантировать 100% корректное срабатывание биндов/скриптов в V-MP

; Данный скрипт перехватывает нажатие клавиатурных кнопок от 1 до = 
; Таким образом функциональность кнопок от 1 до = (оружие) пропадает в игре (оружие возможно выбрать на 1-0, зажав CTRL или SHIFT)
; Однако в чате будет корректно вводиться цифра или символ при нажатии на кнопку так-как ввод такого текста организован через заполнение буфера обмена
; Иными словами, когда вы в чате набираете "100" - скрипт последовательно заполняет буфер обмена текстом "1", "0" и "0" и после каждого заполнения жмёт CTRL+V
; На этом и основана работа данного скрипта в отличии от других (либо мне не известно о подобных)

;     +++     При вводе сообщения, когда нужно сделать вызов скорой/полиции или отправить жалобу, не работает вставка текста через CTRL+V     +++
;     +++     При включенном скрипте цифры в этих "окошках" нужно вводить с NumLock'a (дополнительные цифровые кнопки на клавиатуре справа).     +++
; Задержка ввода зависит от вашей системы (в том числе от FPS в игре), базовая - около 2/100 секунды

; ВАЖНО! Зажимать сначала вторую кнопку бинда скрипта!
; К примеру, в случае "1+UP" это как раз и будет "стрелка вверх", то есть СНАЧАЛА ВЫ ЗАЖИМАЕТЕ Up А ПОТОМ НАЖИМАЕТЕ НА КНОПКУ 1
; Тестировал, если делать наоборот - неслабо лагает или багуется.

; Разрешается любое использование и изменение моего скрипта, однако я прошу оставлять мои комментарии (или изменять, если нашли другое решение)
; Об обнаруженных проблемах пишите на форум "V-MP.ru" в теме "Кастомный AHK биндер-скрипт для V-MP"
; Отдельное спасибо КВАС, Boris, Jo Vetur, JFox, Klon1x, Vladimir_Rupasov и Tommy_Ross. Часть идей была позаимствована у них, иногда без разрешения ¯\_(^_^)_/¯


#NoEnv ; отменяем проверку для пустых переменных
#SingleInstance force ; скрипту разрешено запускаться снова, если он уже выполняется.
#IfWinActive ahk_exe GTA5.exe ; скрипт работает только при активном окне/процессе GTA5


; Сделаем кнопки перезагрузки, паузы и возобновления работы скрипта
; todo в будущем сделать нормальный старт скрипта на паузе, чтобы активировать его (скрипт) после загрузки на сервер
F9:: ; пауза
    If not Stop
    {
    Stop := True
    Pause
    }
Return

F10:: ; возобновление
    If Stop
    {
    Stop := False
    Pause
    }
Return

F11:: Reload ; перезагрузка скрипта
Return


; делаем 4 первых бинда под кнопку 1 плюс стрелки Up, Left, Down, Right и кнопки F1 F2 F3 F4
1:: ; назначение первой кнопки "1" для комбинаций бинда, в дальнейшем привожу комментарии только для неё, остальные сделаны по образцу
{
    NM1 = 1 ; переменная для проверки на ввод текста бинда, нужна для вставки (ввода) "1" в чате, в случае, если не использовались бинды
    Clipboard := ; очиста буфера обмена
    getkeystate, 1U, Up ; запрос состояния кнопки ввода бинда, изменение переменной 1U (всего лиш название, для комбинации 1+Up), отслеживаться будет нажатие кнопки "стрелка вверх"
        if 1U=D ; если кнопка Up была нажата переменной 1U присваивается значение D по getkeystate
        {
            NM1 = 0 ;  переменная для того, чтобы знать, что бинд 1+Up срабатывал
            Clipboard := "/b " ; заполняем буфер обмена текстом вашего бинда. >>>> БАЗОВЫЙ ТЕКСТ БИНДА ИЗМЕНЯЕТСЯ ТУТ<<<< Вводите своё сообщение после Clipboard := между кавычек ""
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} ; последовательно - T, ожидание 2мс, нажать левый CTRL, ожидание 2мс, V, ожидание 2мс, отпустить левый CTRL, ожидание 2мс
        }
    getkeystate, 1L, Left ; запрос состояния кнопки ввода бинда, изменение переменной 1L (всего лиш название, для комбинации 1+Left), отслеживаться будет нажатие кнопки "стрелка влево"
        if 1L=D ; если кнопка Left была нажата переменной 1L присваивается значение D по getkeystate
        {
            NM1 = 0 ; переменная для того, чтобы знать, что бинд 1+Left срабатывал
            Clipboard := "/do Перед вами женщина в форме капитана полиции LSPD " ; по аналогии, см. выше        >>>>>>>>>> ДЛЯ НОВИЧКОВ! БАЗОВЫЙ ТЕКСТ БИНДА ИЗМЕНЯЕТСЯ ТУТ <<<<<<<<<<     Вводите своё сообщение после Clipboard := между кавычек ""
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} ; по аналогии, см. выше
        }
    getkeystate, 1D, Down ; по аналогии, см. выше
        if 1D=D  ; по аналогии, см. выше
        {
            NM1 = 0 ; по аналогии, см. выше
            Clipboard := "/me сняла с пояса пластиковые наручники " ; по аналогии, см. выше
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} ; по аналогии, см. выше
        }
    getkeystate, 1R, Right ; по аналогии, см. выше
        if 1R=D  ; по аналогии, см. выше
        {
            NM1 = 0 ; по аналогии, см. выше
            Clipboard := "/s Не двигаться! " ; по аналогии, см. выше      >>>>>>>>>> ДЛЯ НОВИЧКОВ! БАЗОВЫЙ ТЕКСТ БИНДА ИЗМЕНЯЕТСЯ ТУТ <<<<<<<<<<     Вводите своё сообщение после Clipboard := между кавычек ""
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} ; по аналогии, см. выше
        }
    getkeystate, 1F1, F1 ; по аналогии, см. выше
        if 1F1=D  ; по аналогии, см. выше
        {
            NM1 = 0 ; по аналогии, см. выше
            Clipboard := "/me одела служебную форму " ; по аналогии, см. выше      >>>>>>>>>> ДЛЯ НОВИЧКОВ! БАЗОВЫЙ ТЕКСТ БИНДА ИЗМЕНЯЕТСЯ ТУТ <<<<<<<<<<     Вводите своё сообщение после Clipboard := между кавычек ""
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} ; по аналогии, см. выше
        }
    getkeystate, 1F2, F2 ; по аналогии, см. выше
        if 1F2=D  ; по аналогии, см. выше
        {
            NM1 = 0 ; по аналогии, см. выше
            Clipboard := "/b Быстро отхилить? Или дольше но с отыгровкой по RP? " ; по аналогии, см. выше      >>>>>>>>>> ДЛЯ НОВИЧКОВ! БАЗОВЫЙ ТЕКСТ БИНДА ИЗМЕНЯЕТСЯ ТУТ <<<<<<<<<<     Вводите своё сообщение после Clipboard := между кавычек ""
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} ; по аналогии, см. выше
        }
    getkeystate, 1F3, F3 ; по аналогии, см. выше
        if 1F3=D  ; по аналогии, см. выше
        {
            NM1 = 0 ; по аналогии, см. выше
            Clipboard := "/members" ; по аналогии, см. выше      >>>>>>>>>> ДЛЯ НОВИЧКОВ! БАЗОВЫЙ ТЕКСТ БИНДА ИЗМЕНЯЕТСЯ ТУТ <<<<<<<<<<     Вводите своё сообщение после Clipboard := между кавычек ""
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} ; по аналогии, см. выше
        }
    getkeystate, 1F4, F4 ; по аналогии, см. выше
        if 1F4=D  ; по аналогии, см. выше
        {
            NM1 = 0 ; по аналогии, см. выше
            Clipboard := "/g Занимаю волну государственных новостей " ; по аналогии, см. выше      >>>>>>>>>> ДЛЯ НОВИЧКОВ! БАЗОВЫЙ ТЕКСТ БИНДА ИЗМЕНЯЕТСЯ ТУТ <<<<<<<<<<     Вводите своё сообщение после Clipboard := между кавычек ""
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} ; по аналогии, см. выше
        }
    if NM1=1 ; если не один из четырех биндов, что описаны выше, не сработал (значение NM1 осталось равным 1), через CTRL+V будет отправлен символ "1" так как кнопка "1" была нажата без бинда.
        {
            Clipboard := "1" ; заполняем буфер обмена текстом "1" чтобы имитировать нажатие кнопки "1". Изменять не рекомендуется.
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} ; вместо ввода "1" при нажатии на кнопку "1" из буфера обмена вставляется текст "1", функциональность при вводе текста сохраняется
        }
}
Return

2:: ; делаем бинды для кнопки "2"
{
    NM2 = 1 
    Clipboard := 
    getkeystate, 2U, Up 
        if 2U=D 
        {
            NM2 = 0 
            Clipboard := "/me " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 2L, Left 
        if 2L=D 
        {
            NM2 = 0 
            Clipboard := "/do Телосложение спортивное, рост около 160 см, волосы рыжие, глаза карие " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 2D, Down 
        if 2D=D 
        {
            NM2 = 0 
            Clipboard := "/me надела резиновые перчатки на руки " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 2R, Right 
        if 2R=D 
        {
            NM2 = 0 
            Clipboard := "/s Держать руки так, чтобы я их видела! " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 2F1, F1 
        if 2F1=D 
        {
            NM2 = 0 
            Clipboard := "/do медицинская сумка на плече " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 2F2, F2 
        if 2F2=D 
        {
            NM2 = 0 
            Clipboard := "/r Хирург Ирен Твинкед заступила на дежурство " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 2F3, F3 
        if 2F3=D 
        {
            NM2 = 0 
            Clipboard := "/accept " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 2F4, F4 
        if 2F4=D 
        {
            NM2 = 0 
            Clipboard := "/gov Уважаемые жители и гости штата! " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    if NM2=1 
        {
            Clipboard := "2" 
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} 
        }
}
Return

3:: ; делаем бинды для кнопки "3"
{
    NM3 = 1 
    Clipboard := 
    getkeystate, 3U, Up 
        if 3U=D 
        {
            NM3 = 0 
            Clipboard := "/do " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 3L, Left 
        if 3L=D 
        {
            NM3 = 0 
            Clipboard := "/do Держится настороженно, правая рука лежит на поясе с оружием " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 3D, Down 
        if 3D=D 
        {
            NM3 = 0 
            Clipboard := "/r Капитан К. Твинкед заступила на смену " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 3R, Right 
        if 3R=D 
        {
            NM3 = 0 
            Clipboard := "/s На колени, руки за голову! " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 3F1, F1 
        if 3F1=D 
        {
            NM3 = 0 
            Clipboard := "/me надела хирургические перчатки " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 3F2, F2 
        if 3F2=D 
        {
            NM3 = 0 
            Clipboard := "/r Пост: Регистратура / Врачей: " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 3F3, F3 
        if 3F3=D 
        {
            NM3 = 0 
            Clipboard := "//res " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 3F4, F4 
        if 3F4=D 
        {
            NM3 = 0 
            Clipboard := "/gov Продолжается набор в Полицейскую Академию " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    if NM3=1 
        {
            Clipboard := "3" 
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} 
        }
}
Return

4:: ; делаем бинды для кнопки "4"
{
    NM4 = 1 
    Clipboard := 
    getkeystate, 4U, Up 
        if 4U=D 
        {
            NM4 = 0 
            Clipboard := "/try " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 4L, Left 
        if 4L=D 
        {
            NM4 = 0 
            Clipboard := "Здравствуйте. Капитан Катрин Твинкед, LSPD №092 " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 4D, Down 
        if 4D=D 
        {
            NM4 = 0 
            Clipboard := "/r Пост №1 / Код 4 / Посетителей " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 4R, Right 
        if 4R=D 
        {
            NM4 = 0 
            Clipboard := "/me забрала электронный чип-ключ от камер " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 4F1, F1 
        if 4F1=D 
        {
            NM4 = 0 
            Clipboard := "/me надела медицинскую маску " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 4F2, F2 
        if 4F2=D 
        {
            NM4 = 0 
            Clipboard := "/do пострадавший человек находится в сознании? " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 4F3, F3 
        if 4F3=D 
        {
            NM4 = 0 
            Clipboard := "/cancelpolice" 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 4F4, F4 
        if 4F4=D 
        {
            NM4 = 0 
            Clipboard := "/gov Оставить своё заявление вы можете " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    if NM4=1 
        {
            Clipboard := "4" 
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} 
        }
}
Return

5:: ; делаем бинды для кнопки "5"
{
    NM5 = 1 
    Clipboard := 
    getkeystate, 5U, Up 
        if 5U=D 
        {
            NM5 = 0 
            Clipboard := "/gov " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 5L, Left 
        if 5L=D 
        {
            NM5 = 0 
            Clipboard := "Предъявите пожалуйста ваши документы и водительские лицензии " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 5D, Down 
        if 5D=D 
        {
            NM5 = 0 
            Clipboard := "/r Пост №2 / Код 4 / Заключенных " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 5R, Right 
        if 5R=D 
        {
            NM5 = 0 
            Clipboard := "/me разблокировала двери и открыла камеру " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 5F1, F1 
        if 5F1=D 
        {
            NM5 = 0 
            Clipboard := "/me достала из сумки медицинские препараты "
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 5F2, F2 
        if 5F2=D 
        {
            NM5 = 0 
            Clipboard := "/me установив комбитьюб, подключила кислородную ИВЛ "
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 5F3, F3 
        if 5F3=D 
        {
            NM5 = 0 
            Clipboard := "/cancelems" 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 5F4, F4 
        if 5F4=D 
        {
            NM5 = 0 
            Clipboard := "/gov в электронном виде на официальном " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    if NM5=1 
        {
            Clipboard := "5" 
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} 
        }
}
Return

6:: ; делаем бинды для кнопки "6"
{
    NM6 = 1 
    Clipboard := 
    getkeystate, 6U, Up 
        if 6U=D 
        {
            NM6 = 0 
            Clipboard := "/r " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 6L, Left 
        if 6L=D 
        {
            NM6 = 0 
            Clipboard := "Куда вы направляетесь? Что вы везёте? " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 6D, Down 
        if 6D=D 
        {
            NM6 = 0 
            Clipboard := "/r Пост №3 / Код 4 / Нарушителей " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 6R, Right 
        if 6R=D 
        {
            NM6 = 0 
            Clipboard := "/me закрыла камеру и заблокировала двери " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 6F1, F1 
        if 6F1=D 
        {
            NM6 = 0 
            Clipboard := "/me достала из шкафчика медицинские препараты и инструменты " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 6F2, F2 
        if 6F2=D 
        {
            NM6 = 0 
            Clipboard := "/me производит непрямой массаж сердца - 30 нажатий " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 6F3, F3 
        if 6F3=D 
        {
            NM6 = 0 
            Clipboard := "/canceltaxi" 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 6F4, F4 
        if 6F4=D 
        {
            NM6 = 0 
            Clipboard := "/gov портале Los Santos Police Department " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    if NM6=1 
        {
            Clipboard := "6" 
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} 
        }
}
Return

7:: ; делаем бинды для кнопки "7"
{
    NM7 = 1 
    Clipboard := 
    getkeystate, 7U, Up 
        if 7U=D 
        {
            NM7 = 0 
            Clipboard := "/todo " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 7L, Left 
        if 7L=D 
        {
            NM7 = 0 
            Clipboard := "Пожалуйста, выйдите из машины " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 7D, Down 
        if 7D=D 
        {
            NM7 = 0 
            Clipboard := "/r Пост №4 / Код 4 / Посторонних " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 7R, Right 
        if 7R=D 
        {
            NM7 = 0 
            Clipboard := "Вы имеете право на адвоктата. Вы имеете право хранить молчание " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 7F1, F1 
        if 7F1=D 
        {
            NM7 = 0 
            Clipboard := "/me передаёт лекарства человеку напротив " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 7F2, F2 
        if 7F2=D 
        {
            NM7 = 0 
            Clipboard := "/me достала лекарства, раздаёт пострадавшим " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 7F3, F3 
        if 7F3=D 
        {
            NM7 = 0 
            Clipboard :=  "/cancelmech" 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 7F4, F4 
        if 7F4=D 
        {
            NM7 = 0 
            Clipboard := "/gov Продолжается набор в интернатуру " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    if NM7=1 
        {
            Clipboard := "7" 
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} 
        }
}
Return

8:: ; делаем бинды для кнопки "8"
{
    NM8 = 1 
    Clipboard := 
    getkeystate, 8U, Up 
        if 8U=D 
        {
            NM8 = 0 
            Clipboard := "/w "
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 8L, Left 
        if 8L=D 
        {
            NM8 = 0 
            Clipboard := "/todo Всё в порядке. Вы свободны, удачного вам дня!  *Katrin Tvinked доброжелательно улыбается " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 8D, Down 
        if 8D=D 
        {
            NM8 = 0 
            Clipboard := "/r Капитан К. Твинкед завершила смену" 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 8R, Right 
        if 8R=D 
        {
            NM8 = 0 
            Clipboard := "Всё что вы скажете может и будет использоваться против вас " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 8F1, F1 
        if 8F1=D 
        {
            NM8 = 0 
            Clipboard := "/me заполняет рецептурный бланк " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 8F2, F2 
        if 8F2=D 
        {
            NM8 = 0 
            Clipboard := "Медицинская справка для трудоустройства У-89 стоит 500$ "
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 8F3, F3 
        if 8F3=D 
        {
            NM8 = 0 
            Clipboard := "/anim handsup" 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 8F4, F4 
        if 8F4=D 
        {
            NM8 = 0 
            Clipboard := "/gov для работы в EMS и Госпитале LS " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    if NM8=1 
        {
            Clipboard := "8" 
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} 
        }
}
Return

9:: ; делаем бинды для кнопки "9"
{
    NM9 = 1 
    Clipboard := 
    getkeystate, 9U, Up 
        if 9U=D 
        {
            NM9 = 0 
            Clipboard := "/s " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 9L, Left 
        if 9L=D 
        {
            NM9 = 0 
            Clipboard := "/m LSPD! Прижаться к обочине и остановиться! " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 9D, Down 
        if 9D=D 
        {
            NM9 = 0 
            Clipboard := "/me включила устройство видеозаписи и проверила его работу " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 9R, Right 
        if 9R=D 
        {
            NM9 = 0 
            Clipboard := "/uninvite " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 9F1, F1 
        if 9F1=D 
        {
            NM9 = 0 
            Clipboard := "/me протягивает заполненный бланк пациенту " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 9F2, F2 
        if 9F2=D 
        {
            NM9 = 0 
            Clipboard :=  "/r Хирург Ирен Твинкед ушла на обеденный перерыв ((афк 15 минут)) " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 9F3, F3 
        if 9F3=D 
        {
            NM9 = 0 
            Clipboard := "/anim give" 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 9F4, F4 
        if 9F4=D 
        {
            NM9 = 0 
            Clipboard := "/gov Оставить своё заявление вы можете " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    if NM9=1 
        {
            Clipboard := "9" 
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} 
        }
}
Return

0:: ; делаем бинды для кнопки "0"
{
    NM10 = 1 
    Clipboard := 
    getkeystate, 10U, Up 
        if 10U=D 
        {
            NM10 = 0 
            Clipboard := "/g " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 10L, Left 
        if 10L=D 
        {
            NM10 = 0 
            Clipboard := "/m LSPD! Водитель, заглушить двигатель! " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 10D, Down 
        if 10D=D 
        {
            NM10 = 0 
            Clipboard := "/me расписалась в получении снаряжения, оружия и патронов " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 10R, Right 
        if 10R=D 
        {
            NM10 = 0 
            Clipboard := "/swat " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 10F1, F1 
        if 10F1=D 
        {
            NM10 = 0 
            Clipboard := "Обратитесь в любую аптеку с этим рецептом " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 10F2, F2 
        if 10F2=D 
        {
            NM10 = 0 
            Clipboard := "/r Хирург Ирен Твинкед завершила дежурство "
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 10F3, F3 
        if 10F3=D 
        {
            NM10 = 0 
            Clipboard := "/anim army" 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 10F4, F4 
        if 10F4=D 
        {
            NM10 = 0 
            Clipboard :=  "/gov в электронном виде на официальном " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    if NM10=1 
        {
            Clipboard := "0" 
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} 
        }
}
Return

-:: ; делаем бинды для кнопки "-"
{
    NM11 = 1 
    Clipboard := 
    getkeystate, 11U, Up 
        if 11U=D 
        {
            NM11 = 0 
            Clipboard := "/m "
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 11L, Left 
        if 11L=D 
        {
            NM11 = 0 
            Clipboard := "/m При неподчинении - мы откроем огонь! "
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 11D, Down 
        if 11D=D 
        {
            NM11 = 0 
            Clipboard := "/me установила оружие в слот патрульного автомобиля и заблокировала держатель " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 11R, Right 
        if 11R=D 
        {
            NM11 = 0 
            Clipboard := "/invite "
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 11F1, F1 
        if 11F1=D 
        {
            NM11 = 0 
            Clipboard := "Не забудьте прийти на повторный приём " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 11F2, F2 
        if 11F2=D 
        {
            NM11 = 0 
            Clipboard := "/me отстегнула ремень безопасности " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 11F3, F3 
        if 11F3=D 
        {
            NM11 = 0 
            Clipboard := "/anim gang3" 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 11F4, F4 
        if 11F4=D 
        {
            NM11 = 0 
            Clipboard := "/gov портале Emergency Medical Services " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    if NM11=1 
        {
            Clipboard := "-" 
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} 
        }
}
Return

=:: ; делаем бинды для кнопки "="
{
    NM12 = 1 
    Clipboard := 
    getkeystate, 12U, Up 
        if 12U=D 
        {
            NM12 = 0 
            Clipboard := "/su " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 12L, Left 
        if 12L=D 
        {
            NM12 = 0 
            Clipboard := "/m Выкинуть ключи в окно, руки на руль! " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 12D, Down 
        if 12D=D 
        {
            NM12 = 0 
            Clipboard := "/me разблокировала держатель и забрала своё оружие из патрульного автомобиля " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 12R, Right 
        if 12R=D 
        {
            NM12 = 0 
            Clipboard := "/giverank " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 12F1, F1 
        if 12F1=D 
        {
            NM12 = 0 
            Clipboard := "Всего вам доброго! " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 12F2, F2 
        if 12F2=D 
        {
            NM12 = 0 
            Clipboard := "/me пристегнула ремень безопасности " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 12F3, F3 
        if 12F3=D 
        {
            NM12 = 0 
            Clipboard := "/anim stop" 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    getkeystate, 12F4, F4 
        if 12F4=D 
        {
            NM12 = 0 
            Clipboard := "/gov Спасибо за внимание! " 
            send, {vk54}{sleep 4}{LControl down}{sleep 6}{vk56}{sleep 4}{LControl up} 
        }
    if NM12=1 
        {
            Clipboard := "=" 
            send, {LControl down}{sleep 2}{vk56}{sleep 2}{LControl up} 
        }
}
Return

; Всем добра! ^_^

Return
exit

Custom_VMP_v1.3.ahk

Custom_VMP_v1.2.ahk

Custom_VMP_v1.1.ahk

Custom_VMP_v1.0.ahk

Custom_VMP_v0.9.ahk

Custom_VMP_v0.8.ahk

Custom_VMP_v0.7.ahk

Custom_VMP_v0.6.ahk

Custom_VMP_v0.5.ahk

Custom_VMP_v0.4.ahk

Custom_VMP_v0.3.ahk

Custom_VMP_v0.2.ahk

Edited by TvinQ
  • Like 2

Share this post


Link to post
Share on other sites

Cписок базовых биндов версии 1.3:

Скрытый текст

1 + Up - "/b " 
2 + Up - "/me " 
3 + Up - "/do " 
4 + Up - "/try " 
5 + Up - "/gov " 
6 + Up - "/r " 
7 + Up - "/todo " 
8 + Up - "/w " 
9 + Up - "/s " 
0 + Up - "/g " 
- + Up - "/m " 
= + Up - "/su " 


1 + Left - "/do Перед вами женщина в форме капитана полиции LSPD " 
2 + Left - "/do Телосложение спортивное, рост около 160 см, волосы рыжие, глаза карие " 
3 + Left - "/do Держится настороженно, правая рука лежит на поясе с оружием " 
4 + Left - "Здравствуйте. Капитан Катрин Твинкед, LSPD №092 " 
5 + Left - "Предъявите пожалуйста ваши документы и водительские лицензии " 
6 + Left - "Куда вы направляетесь? Что вы везёте? " 
7 + Left - "Пожалуйста, выйдите из машины " 
8 + Left - "/todo Всё в порядке. Вы свободны, удачного вам дня!  *Katrin Tvinked доброжелательно улыбается " 
9 + Left - "/m LSPD! Прижаться к обочине и остановиться! " 
0 + Left - "/m LSPD! Водитель, заглушить двигатель! " 
- + Left - "/m При неподчинении - мы откроем огонь! "
= + Left - "/m Выкинуть ключи в окно, руки на руль! " 


1 + Down - "/me сняла с пояса пластиковые наручники " 
2 + Down - "/me надела резиновые перчатки на руки " 
3 + Down - "/r Капитан К. Твинкед заступила на смену " 
4 + Down - "/r Пост №1 / Код 4 / Посетителей " 
5 + Down - "/r Пост №2 / Код 4 / Заключенных " 
6 + Down - "/r Пост №3 / Код 4 / Нарушителей " 
7 + Down - "/r Пост №4 / Код 4 / Посторонних " 
8 + Down - "/r Капитан К. Твинкед завершила смену" 
9 + Down - "/me включила устройство видеозаписи и проверила его работу " 
0 + Down - "/me расписалась в получении снаряжения, оружия и патронов " 
- + Down - "/me установила оружие в слот патрульного автомобиля и заблокировала держатель " 
= + Down - "/me разблокировала держатель и забрала своё оружие из патрульного автомобиля " 


1 + Right - "/s Не двигаться! " 
2 + Right - "/s Держать руки так, чтобы я их видела! " 
3 + Right - "/s На колени, руки за голову! " 
4 + Right - "/me забрала электронный чип-ключ от камер " 
5 + Right - "/me разблокировала двери и открыла камеру " 
6 + Right - "/me закрыла камеру и заблокировала двери " 
7 + Right - "Вы имеете право на адвоктата. Вы имеете право хранить молчание " 
8 + Right - "Всё что вы скажете может и будет использоваться против вас " 
9 + Right - "/uninvite " 
0 + Right - "/swat " 
- + Right - "/invite " 
= + Right - "/giverank " 


1 + F1 - "/me одела служебную форму "
2 + F1 - "/do медицинская сумка на плече " 
3 + F1 - "/me надела хирургические перчатки " 
4 + F1 - "/me надела медицинскую маску " 
5 + F1 - "/me достала из сумки медицинские препараты "
6 + F1 - "/me достала из шкафчика медицинские препараты и инструменты " 
7 + F1 - "/me передаёт лекарства человеку напротив " 
8 + F1 - "/me заполняет рецептурный бланк " 
9 + F1 - "/me протягивает заполненный бланк пациенту " 
0 + F1 - "Обратитесь в любую аптеку с этим рецептом " 
- + F1 - "Не забудьте прийти на повторный приём " 
= + F1 - "Всего вам доброго! " 


1 + F2 - "/b Быстро отхилить? Или дольше но с отыгровкой по RP? "
2 + F2 - "/r Хирург Ирен Твинкед заступила на дежурство " 
3 + F2 - "/r Пост: Регистратура / Врачей: " 
4 + F2 - "/do пострадавший человек находится в сознании? " 
5 + F2 - "/me установив комбитьюб, подключила кислородную ИВЛ " 
6 + F2 - "/me производит непрямой массаж сердца - 30 нажатий " 
7 + F2 - "/me достала лекарства, раздаёт пострадавшим " 
8 + F2 - "Медицинская справка для трудоустройства У-89 стоит 500$ "
9 + F2 - "/r Хирург Ирен Твинкед ушла на обеденный перерыв ((афк 15 минут)) " 
0 + F2 - "/r Хирург Ирен Твинкед завершила дежурство "
- + F2 - "/me отстегнула ремень безопасности " 
= + F2 - "/me пристегнула ремень безопасности " 


1 + F3 - "/members" 
2 + F3 - "/accept " 
3 + F3 - "//res " 
4 + F3 - "/cancelpolice" 
5 + F3 - "/cancelems" 
6 + F3 - "/canceltaxi" 
7 + F3 - "/cancelmech" 
8 + F3 - "/anim handsup" 
9 + F3 - "/anim give" 
0 + F3 - "/anim army" 
- + F3 - "/anim gang3" 
= + F3 - "/anim stop" 


1 + F4 - "/g Занимаю волну государственных новостей " 
2 + F4 - "/gov Уважаемые жители и гости штата! " 
3 + F4 - "/gov Продолжается набор в Полицейскую Академию " 
4 + F4 - "/gov Оставить своё заявление вы можете " 
5 + F4 - "/gov в электронном виде на официальном " 
6 + F4 - "/gov портале Los Santos Police Department " 
7 + F4 - "/gov Продолжается набор в интернатуру " 
8 + F4 - "/gov для работы в EMS и Госпитале LS " 
9 + F4 - "/gov Оставить своё заявление вы можете " 
0 + F4 - "/gov в электронном виде на официальном " 
- + F4 - "/gov портале Emergency Medical Services " 
= + F4 - "/gov Спасибо за внимание! " 

Кнопки управление:
F9 - пауза 
F10 - возобновление работы скрипта
F11 - перезапуск скрипта

Edited by TvinQ
  • Like 2

Share this post


Link to post
Share on other sites

О программе для работы со скриптом:

Цитата

AutoHotkey - это бесплатная свободно-распространяемая программа под Windows с открытыми исходными кодами и одновременно скриптовый язык программирования с огромными возможностями, в принципе даже не требующий установки. Узнать о возможностях AutoHotkey вы сможете в документации и статьях. Официальный сайт программы (англ.) - http://www.autohotkey.com

Скачать программу AutoHotKey

Edited by TvinQ
  • Like 1

Share this post


Link to post
Share on other sites

Все тесты выполнялись на Win7 x64 со Steam версией GTA 5.

Жду ваших предложений и пожеланий, а также постов о найденных багах и глюках.

Буду благодарен, если в данной теме вы напишите свои примеры биндов/макросов/скриптов, которыми пользуетесь. 

Edited by TvinQ
  • Like 1
  • Pepe (+1) 1

Share this post


Link to post
Share on other sites

Хорошо бы дополнить тему скриншотами.

Так же не совсем понял принцип работы, т.е. мне нужно нажать 2 кнопки для срабатывания бинда?

Так же вопрос, есть ли возможность включить/выключить автоотправку?

Возможно ли задать свои клавиши, к примеру, я хочу бинды не на цифрах, а допустим на кнопке G, могу ли я забиндить что-то на неё?

Есть ли профили? Допустим я хочу чтоб первый профиль у меня был для команд и общения, а второй для анимаций.

Есть ли возможность последовательного использования отправки? К примеру, я хочу чтоб при нажатии на кнопку 1 я получал следующие: /anim hey (Enter) Подходите! (Enter). В итоге я получу использование анимации и следом сообщение в чат при нажатии всего одной кнопки на клаве.

  • Like 1

Share this post


Link to post
Share on other sites
3 часа назад, Demi_Vercetti сказал:

Хорошо бы дополнить тему скриншотами.

Так же не совсем понял принцип работы, т.е. мне нужно нажать 2 кнопки для срабатывания бинда?

Так же вопрос, есть ли возможность включить/выключить автоотправку?

Возможно ли задать свои клавиши, к примеру, я хочу бинды не на цифрах, а допустим на кнопке G, могу ли я забиндить что-то на неё?

Есть ли профили? Допустим я хочу чтоб первый профиль у меня был для команд и общения, а второй для анимаций.

Есть ли возможность последовательного использования отправки? К примеру, я хочу чтоб при нажатии на кнопку 1 я получал следующие: /anim hey (Enter) Подходите! (Enter). В итоге я получу использование анимации и следом сообщение в чат при нажатии всего одной кнопки на клаве.

Отвечаю по пунктам:
- Скриншотами? Есть же исходный код.
- Да, две кнопки. Сначала зажимаете одну кнопку (стрелку) потом нажимаете вторую кнопку - цифру или символ.
- Да, дописать код в строке бинда: send, {T}{sleep 2}{LControl down}{sleep 2}{vk56}{sleep 2}{LControl up}{sleep 2}{Enter}
- Да, читайте документацию на AutoHotKey и дополняйте мой скрипт на свой вкус.
- Профилей нет, это единый скрипт (файл). Для такой задачи - скопируйте AHK файл, переименуйте и отредактируйте.
- Да, читайте документацию на AutoHotKey, на основе моего скрипта можно и такое реализовать. 

UPD. Обновил скрипт до версии 0.7

Edited by TvinQ
  • Like 1

Share this post


Link to post
Share on other sites

UPD. Обновил скрипт до версии 0.8 

Проделал большую работу, добавил бинды для кнопок F1, F2, F3 и F4 в сочетании с 1 до =
Теперь в общей сложности 96 комбинаций кнопок с базовыми биндами (см. базовые бинды).

Бинды делал для себя. Под женские персонажи в LSPD и EMS.
Если вы будете пользоваться моим скриптом - желательно отредактировать тексты биндов.

P.S. Заметил такую особенность: 
При вводе сообщения, когда мне нужно сделать вызов скорой/полиции или отправить жалобу, не работает вставка текста. 
То есть при включенном скрипте цифры в этих "окошках" нужно вводить с NumLock'a (дополнительные цифровые кнопки на клавиатуре справа).

Edited by TvinQ
  • Like 1

Share this post


Link to post
Share on other sites

У меня AHK не работает корректно. Если мне нужно прописать действие через /me, то получается ".ьу передал мед карту" - это к примеру.

Менял в скрипте систему на х64 битную, но ничего не получилось.

Share this post


Link to post
Share on other sites
45 минут назад, Tony Carter сказал:

У меня AHK не работает корректно. Если мне нужно прописать действие через /me, то получается ".ьу передал мед карту" - это к примеру.

Менял в скрипте систему на х64 битную, но ничего не получилось.

 

11 минуту назад, Captain сказал:

Поэтому лучше использовать тот Binder от Fox. Там он работает по другому принципу. 

Зачем в теме о МОЁМ скрипте писать что ВАШ СКРИПТ не работает корректно?
Создайте свою тему и там обсуждайте, а это - оффтоп, ко мне никаким боком не относится.

P.S. Читайте документацию, вам всего лишь нужно использовать виртуальные коды.

Edited by TvinQ
  • Like 1

Share this post


Link to post
Share on other sites
1 минуту назад, Captain сказал:

Это не мой скрипт. Это обычный совет был человеку, у которого проблемы) Не бойтесь вы так конкуренции. :)

Оффтоп, удалите сообщения, для этого есть ЛС.

Или он может создать свою тему.
Обсуждение "чужих проблем" в этой теме неуместно.

Edited by TvinQ
  • Like 1

Share this post


Link to post
Share on other sites
12 минуты назад, TvinQ сказал:

 

Зачем в теме о МОЁМ скрипте писать что ВАШ СКРИПТ не работает корректно?

Потому, что именно ВАШ скрипт не работает у меня.

Share this post


Link to post
Share on other sites
В 18.05.2017 в 20:32, Tony Carter сказал:

Потому, что именно ВАШ скрипт не работает у меня.

Хорошо, в таком случае отправьте мне свой файл скрипта (или код), я помогу вам исправить. У меня все работает без ошибок.

Я просто не могу представить, как вставка текста из буфера обмена может впоследствии некорректно вводиться в чате.

А вы не редактировали мой скрипт?

UPD. Обновил скрипт до версии 0.9 

Edited by TvinQ
  • Like 1

Share this post


Link to post
Share on other sites

UPD. Обновил скрипт до версии 1.0 

В 18.05.2017 в 19:38, Tony Carter сказал:

У меня AHK не работает корректно. Если мне нужно прописать действие через /me, то получается ".ьу передал мед карту" - это к примеру.

Менял в скрипте систему на х64 битную, но ничего не получилось.

Пруфов, что это именно мой скрипт глючит, я так и не дождался...

Edited by TvinQ
  • Like 1

Share this post


Link to post
Share on other sites

UPD. Обновил скрипт до версии 1.1

По результатам проверок выявлены проблемы с перехватом кнопок на Windows 10 - скрипт может не работать.

 

Edited by TvinQ
  • Like 1

Share this post


Link to post
Share on other sites

UPD от 20 июня: обновил скрипт до версии 1.2

Во первых, в процессе эксплуатации старых биндов оказалось, что треть из них мной почти не используются, чат срезает некоторые сообщения, и что необходимо добавить новые бинды для автоматизации сообщений в /gov канале.
Во вторых, проверил возможность дать на 1 бинд автоматическую отправку нескольких последовательных сообщений в чат.
Клиент крашит. Скорей всего это связано  некорректной обработкой команд ожидания типа {sleep N} общей продолжительность более 3 секунд.

 

Edited by TvinQ
  • Like 2

Share this post


Link to post
Share on other sites

UPD от 26 июня: обновил скрипт до версии 1.3 

Изменены бинды под актуальную версию VMP.

  • Like 1

Share this post


Link to post
Share on other sites

Странно, ваш изначальный скрип совсем не хочет восприниматься системой, в буфер не копирует, от админа даже пробовал запускать.
PS. Можно ли сделать рандомное выпадение фразы. Например, я не хочу быть биндерботом и постоянно трепать ДРАТУТИ офицер Пупкин, гонидокументы.
Я хочу что бы при нажатии определенной кнопки, у меня выдавалась случайная фраза из заранее приготовленных. Насколько это тяжело реализовать?

Share this post


Link to post
Share on other sites
4 часа назад, Flashback сказал:

Странно, ваш изначальный скрип совсем не хочет восприниматься системой, в буфер не копирует, от админа даже пробовал запускать.
PS. Можно ли сделать рандомное выпадение фразы. Например, я не хочу быть биндерботом и постоянно трепать ДРАТУТИ офицер Пупкин, гонидокументы.
Я хочу что бы при нажатии определенной кнопки, у меня выдавалась случайная фраза из заранее приготовленных. Насколько это тяжело реализовать?

1. Скорей всего это баги АHK и Win10/UAC.

2. Скорей всего нет, во всяком случае я не знаю простого и рабочего способа реализовать рандомную функцию под V-MP.

3. Я полностью прекратил обновление и забросил поддержку данного скрипта.

Share this post


Link to post
Share on other sites
16 минут назад, MrSlavs сказал:

Скачал Custom_VMP_v1.3.ahk, скомпилировал, запустил, зашёл в игру - не работает. Ни 1+Up ничего.

От имени администратора попробуй запустить.

  • Like 1

Share this post


Link to post
Share on other sites

Спасибо 

32 минуты назад, Cheeck сказал:

От имени администратора попробуй запустить.

Спасибо, бро.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×