Вопросы по AHK-скриптингу

bigBau

Участник
21
0
Хелп! прикрепляю код ниже
AutoHotKey:
#IfWinActive GTA:SA:MP
#Include samp-udfR1.ahk

Numpad5::
Loop
{
    GetChatLine(0, chat)
    if (RegExMatch(chat, "\[(\d\d):(\d\d):(\d\d)\] - опа жопа \((.*)_(.*)\) \[(\d\d?\d?)\]"))
    {
    sleep 100
    addchatmessage("Жопа хоббаа")
    }
}
return
Суть в том что пишу в чат нажимаю Нум5 и пишу в чат "опа жопа" и должно вывестись сообщение "Жопа хоббаа"
В чатлоге строка выглядит так:
[15:04:43] - опа жопа (Vasiliy_Pupkin) [120]
Не понимаю почему не работает. Пробовал и через FileRead, все равно не работает
 

Nifailo

Новичок
26
0
Привет, делал ахк для доты. Суть моей проблемы: мне нужна помощь, столкнулся я с такой проблемой, что хочу сделать свой ахк для доты и у меня есть менюшка в котором должны быть кнопки с изображениями персонажей (к примеру "Инвокер") и при нажатии этой кнопки открывалось приложение invoker.exe. Гуглил, гуглил я, но спустя час ничего так и не нашёл по этому поводу. Мне надо сделать невидимую кнопку, или же кнопку с изображением (на ваш выбор). Заранее буду благодарен) Суть скрипта: есть меню с каким-либо персонажем (в моём скрипте их будет несколько) и когда нажимаешь на кнопку-картинку запускалось приложение "invoker.exe".
 

666lamb_of_god666

Новичок
3
0
Приветствую, мне нужен скрипт AHK для автоматической покупки в окне. Тобишь /donate, выбор второй строки, выбор третьей строки (всё со списка). И так бесконечно, пока не выключишь
 

meowprd

Тот самый Котовский
Проверенный
1,278
718
#IfWinActive в начале скрипта
ControlSend
ControlClick
Аргументы ищи в AHK Wiki
Хелп! прикрепляю код ниже
AutoHotKey:
#IfWinActive GTA:SA:MP
#Include samp-udfR1.ahk

Numpad5::
Loop
{
    GetChatLine(0, chat)
    if (RegExMatch(chat, "\[(\d\d):(\d\d):(\d\d)\] - опа жопа \((.*)_(.*)\) \[(\d\d?\d?)\]"))
    {
    sleep 100
    addchatmessage("Жопа хоббаа")
    }
}
return
Суть в том что пишу в чат нажимаю Нум5 и пишу в чат "опа жопа" и должно вывестись сообщение "Жопа хоббаа"
В чатлоге строка выглядит так:
[15:04:43] - опа жопа (Vasiliy_Pupkin) [120]
Не понимаю почему не работает. Пробовал и через FileRead, все равно не работает

getchatline не возвращает строку с чатлогом
пробуй мою регулярку:
AutoHotKey:
.*опа жопа \(\w*\) \[[0-9]*\]

Также проверяй версию сампа, чтобы она была строго R1
Привет, делал ахк для доты. Суть моей проблемы: мне нужна помощь, столкнулся я с такой проблемой, что хочу сделать свой ахк для доты и у меня есть менюшка в котором должны быть кнопки с изображениями персонажей (к примеру "Инвокер") и при нажатии этой кнопки открывалось приложение invoker.exe. Гуглил, гуглил я, но спустя час ничего так и не нашёл по этому поводу. Мне надо сделать невидимую кнопку, или же кнопку с изображением (на ваш выбор). Заранее буду благодарен) Суть скрипта: есть меню с каким-либо персонажем (в моём скрипте их будет несколько) и когда нажимаешь на кнопку-картинку запускалось приложение "invoker.exe".
AutoHotKey:
#SingleInstance force
Gui, add, button, gButtonClick, Button Name
Gui, show

F2::
ExitApp
return

ButtonClick:
Run, AutoAD.exe
return

AutoAD.exe лежал рядом со скриптом.
 
Последнее редактирование:

Dellv3r

Новичок
18
0
Как сделать закуп? Команда /buy > после чего нужно покупать первый пункт и седьмой.
AutoHotKey:
F1::
SendMessage, 0x50,, 0x4190419,, A
Send {F6}/buy{ENTER}
sleep 200
Send {enter}
sleep 200
Send {F6}/buy{ENTER}
Send {Down}
Send {Down}
Send {Down}
Send {Down}
Send {Down}
Send {Down}
Send {enter}
Return
 

AterEX

Участник
44
1
Есть два решения:
1. Sendinput, {Text}%Text%
(быстрее)
2. Sendraw, %Text%
(медленнее)



Здравствуйте.
Почему вместо знака "+" скрипт выдает заглавную букву?
Демонстрация:
AutoHotKey:
#SingleInstance, Force
Gui, Add, Edit, +limit60 w335 h20 vText
Gui, Add, Button, default, Ok
Gui, Show,
Return

ButtonOk:
Gui, Submit
Numpad1::
Sendinput, %Text%
sleep, 10
send, {enter}
 
Последнее редактирование:

1fs1

Участник
40
0
Как сделать так, чтобы скрипт AHK взаимодействовал с другим скриптом через клавишу? Через send не работает. Работает только тогда, когда я сам лично нажму клавишу. А хотелось бы, чтобы первый скрипт активировал второй через клавишу...
 

degrando

Известный
361
127
Как сделать так, чтобы скрипт AHK взаимодействовал с другим скриптом через клавишу? Через send не работает. Работает только тогда, когда я сам лично нажму клавишу. А хотелось бы, чтобы первый скрипт активировал второй через клавишу...
я не уверен, но может через #include?
 

shelowek

Новичок
3
0
Доброго времени суток. Столкнулся с проблемой, пишу скрипт, который должен сам писать команду для выдачи наказаний игрокам и после написания команды, курсор в окне чата должен сместится на n-символов назад (количество для каждого бинда я должен задать сам)

часть кода, где это должно быть применено:

AutoHotKey:
toChat(text)
{
    send /
    Sleep 200
    Send %text%
}

^Numpad0::toChat("tempmute  30m спам") ;вот тут мне надо отоднивуть курсор на 9 символов. На других строчках будет другое кол-во символов. То есть курсор должен стоятьв специальном пустом месте
^Numpad1::toChat("mute ")
^Numpad2::toChat("tempban 1d ")
^Numpad3::toChat("ban ")
 

Quasper

Известный
835
354
AutoHotKey:
toChat(text, shift)
{
    send /
    Sleep 200
    Send %text%
    SendInput, {left %shift%}
}

^Numpad0::toChat("tempmute  30m спам", 9)
Проверь(не уверен что будет работать т.к ахк уже порядком подзабыл)
 

shelowek

Новичок
3
0
AutoHotKey:
toChat(text, shift)
{
    send /
    Sleep 200
    Send %text%
    SendInput, {left %shift%}
}

^Numpad0::toChat("tempmute  30m спам", 9)
Проверь(не уверен что будет работать т.к ахк уже порядком подзабыл)
Проверил, получил такую Ошибку
Снимок.PNG
 

shelowek

Новичок
3
0
В функцию нужно передать вторым аргументом количество смещений. На примере:
toChat("kick lox", 4)
Понял, спасибо, сейчас допишу и попробую протестировать. Если всё пойдет как по маслу, Буду очень благодарен :)
Здравствуйте. Вернулся сюда, потому что возникла потребность допила скрипта. Можно ли как-то отвязать скрипт от раскладки клавиатуры?
Поясняю: Если включена русская раскладка, то ничего не происходит, но если поменять на английскую, то все прекрасно пишется и выполняет свою работу. Мне надо сделать так, что бы скрипт хорошо работал и на русской и на англ раскладке.
Код:
AutoHotKey:
SetKeyDelay, 0, 50

toSend(text)
{
    Send /
    Sleep 100
    Send %text%
    Send {Enter}
}

toChat(text, shift)
{
    send /
    Sleep 100
    Send %text%
    SendInput, {left %shift%}
}


;команды наблюдения за игроками

^PgUp::toSend("gm 3")
^PgDn::toSend("gm 0")
^Delete::toSend("fly")
^End::toSend("god")
^Home::toSend("v")

;команды выдачи наказаний (в разработке)

^Numpad0::toChat("tempmute  30m флуд.", 10)
^Numpad1::toChat("tempmute  2d Оскорбление игроков проекта.", 32)
^Numpad2::toChat("tempmute  3d Оскорбление проекта/администрации проекта.", 46)
^Numpad3::toChat("tempmute  2d распространение ложной информации.", 38)
^Numpad4::toChat("tempmute  120m попрошайничество.", 23)
^Numpad5::toChat("tempban  7d Использование читов.", 24)
^Numpad6::toChat("tempban  7d Дюп предметов.", 18)
^Numpad7::toChat("tempban  5d Вызывание неполадок в работе сервера.", 41)

Нашел вот такое решение на другом форуме и по другой игре, но не смог понять что это за оператор и как он работает, поэтому не поспешил использовать эту схему.
Код:
AutoHotKey:
:?'n:.ьутг::/menu
:?'n:.ьт::/mn
:?'n:.ьь::/mm
:?'n:.пзы::/gps
:?'n:.фтшь::/anim
:?'n:.фтшьдшые::/animlist
:?'n:.ешьу::/time
:?'n:.оешьу::/jtime
:?'n:.ьгеуешьу::/mutetime
:?'n:.дшс::/lic
:?'n:.ещпзрщту::/togphone
:?'n:.зфпуышяу::/pagesize
:?'n:.руфвьщму::/headmove
:?'n:.ешьуыефьз::/timestamp
:?'n:.ыуддышпы::/sellsigs
:?'n:.фаеукьфлу::/aftermake
:?'n:.штеукшщк::/interior
:?'n:.ссдуфк::/cclear
:?'n:.вшыфидутшслы::/disablenicks
:?'n:.штмшеу::/invite
:?'n:.гтштмшеу::/uninvite

Так же буду признателен, если вы объясните своё решение, чтоб я потом не бегал по форумам :)
 
Последнее редактирование:

staffed

Новичок
9
0
А как сделать так чтобы когда кто то садился ко мне в машину, то АХК реагировало и писало что то в чат?