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

Happukwolf

Известный
6
0
Как сделать подобное:
Если видим картинку, то начинаем кликать много. Когда картинки нету, не кликаем. Затем если видим другую картинку, то начинаем всё сначала.
 

degrando

Известный
361
127
Как сделать подобное:
Если видим картинку, то начинаем кликать много. Когда картинки нету, не кликаем. Затем если видим другую картинку, то начинаем всё сначала.
 

Seregin

Новичок
3
0
Добрый день, господа. Делаю для себя АХК на командах и клавишах для МЗ.
И мне нужна помощь с одной командой /medhelp называется.
:*:/лек::
SendMessage, 0x50,, 0x4190419,, A
SendInput,/do В руке у Кирилла находится аптечка.{enter}
sleep 1000
SendInput, {f6}/me движением руки, открыл аптечку, достал оттуда нужное лекарство и передал пациенту{enter}
sleep 1000
SendInput, {f6}/me закрыл аптечку{enter}
sleep 1000
SendInput, {f6}Выздоравливайте, сэр{!}{enter}
sleep 1000
SendInput, {f6}/medhelp
return
Вот как мне сделать так, чтобы при вводе команды /лек можно было вписать id пациента и цену лечения? Допустим: /лек 30 150$


И ещё помогите также с созданием банальнейшей команды /rn and /fn.
Также столкнулся с проблемой, когда ввожу команду, после ввода последней буквы, уже начинается отыгровка, как исправить?
Заранее спасибо за помощь, и с праздниками!
 

degrando

Известный
361
127
Добрый день, господа. Делаю для себя АХК на командах и клавишах для МЗ.
И мне нужна помощь с одной командой /medhelp называется.
:*:/лек::
SendMessage, 0x50,, 0x4190419,, A
SendInput,/do В руке у Кирилла находится аптечка.{enter}
sleep 1000
SendInput, {f6}/me движением руки, открыл аптечку, достал оттуда нужное лекарство и передал пациенту{enter}
sleep 1000
SendInput, {f6}/me закрыл аптечку{enter}
sleep 1000
SendInput, {f6}Выздоравливайте, сэр{!}{enter}
sleep 1000
SendInput, {f6}/medhelp
return
Вот как мне сделать так, чтобы при вводе команды /лек можно было вписать id пациента и цену лечения? Допустим: /лек 30 150$


И ещё помогите также с созданием банальнейшей команды /rn and /fn.
Также столкнулся с проблемой, когда ввожу команду, после ввода последней буквы, уже начинается отыгровка, как исправить?
Заранее спасибо за помощь, и с праздниками!
AutoHotKey:
~Enter::
if (IsInChat() && !IsDialogOpen()) {
blockChatInput()
Sleep 200
dwAddress := dwSAMP + 0x12D8F8
chatInput := readString(hGTA, dwAddress, 256)
if (regexmatch(chatInput, "/lek ([0-9]*) ([0-9]*)", sms)) {
;тут твоя отыгровка
SendChat("/medhelp "sms1" "sms2")
}
else {
if (!isDialogOpen() && chatInput != "") {
unBlockChatInput()
SendChat(chatInput)
writeString(hGTA, dwAddress, "")
}
}
}
return
 
  • Нравится
Реакции: Seregin

Seregin

Новичок
3
0
AutoHotKey:
~Enter::
if (IsInChat() && !IsDialogOpen()) {
blockChatInput()
Sleep 200
dwAddress := dwSAMP + 0x12D8F8
chatInput := readString(hGTA, dwAddress, 256)
if (regexmatch(chatInput, "/lek ([0-9]*) ([0-9]*)", sms)) {
;тут твоя отыгровка
SendChat("/medhelp "sms1" "sms2")
}
else {
if (!isDialogOpen() && chatInput != "") {
unBlockChatInput()
SendChat(chatInput)
writeString(hGTA, dwAddress, "")
}
}
}
return
Можешь ещё с этим помочь?) Пожалуйста!
И ещё помогите также с созданием банальнейшей команды /rn and /fn.
Также столкнулся с проблемой, когда ввожу команду, после ввода последней буквы, уже начинается отыгровка, как исправить?
Заранее спасибо за помощь, и с праздниками!
Применил твой код, который ты мне написал для лечений, вылезла ошибка.
2wwhXFC.png




~Enter::
if (IsInChat() && !IsDialogOpen()) {
blockChatInput()
Sleep 200
dwAddress := dwSAMP + 0x12D8F8
chatInput := readString(hGTA, dwAddress, 256)
if (regexmatch(chatInput, "/lek ([0-9]*) ([0-9]*)", sms)) {
SendInput,/do В руке у Кирилла находится аптечка.{enter}
sleep 1000
SendInput, {f6}/me движением руки, открыл аптечку, достал оттуда нужное лекарство и передал пациенту{enter}
sleep 1000
SendInput, {f6}/me закрыл аптечку{enter}
sleep 1000
SendInput, {f6}Выздоравливайте, сэр{!}{enter}
sleep 1000
SendChat("/medhelp "sms1" "sms2")
}
else {
if (!isDialogOpen() && chatInput != "") {
unBlockChatInput()
SendChat(chatInput)
writeString(hGTA, dwAddress, "")
}
}
}
return
 
Последнее редактирование:

degrando

Известный
361
127
AutoHotKey:
~Enter::
if (IsInChat() && !IsDialogOpen()) {
blockChatInput()
Sleep 200
dwAddress := dwSAMP + 0x12D8F8
chatInput := readString(hGTA, dwAddress, 256)
if (regexmatch(chatInput, "/lek ([0-9]*) ([0-9]*)", sms)) {
SendInput,/do В руке у Кирилла находится аптечка.{enter}
sleep 1000
SendInput, {f6}/me движением руки, открыл аптечку, достал оттуда нужное лекарство и передал пациенту{enter}
sleep 1000
SendInput, {f6}/me закрыл аптечку{enter}
sleep 1000
SendInput, {f6}Выздоравливайте, сэр{!}{enter}
sleep 1000
SendChat("/medhelp " sms1 " " sms2 "")
}
else {
if (!isDialogOpen() && chatInput != "") {
unBlockChatInput()
SendChat(chatInput)
writeString(hGTA, dwAddress, "")
}
}
}
return
 

ceregapro1

Известный
61
1
Кто-нибудь, помогите, как сделать так, что бы если код при виде слова в чате hnnssy нажимает 1, а если увидит открытый диалог с айди 443, то готило к 2 (у кода ниже флудит: 1 *1500 мл* 1 *1500 мл* 1 *1500 мл* ... без прекращения после дэтекта в чате hnnssy)

2:
Loop
{
GetChatLine(0, chat)
if chat contains hnnssy
{
addChatMessage("takecar")
kal:
sleep 1500
Send {1 down}
sleep 5
Send {1 up}
goto kal
}
else
{
if (!isDialogOpen())
{
goto 2
}
}
}
return
 
Последнее редактирование:

degrando

Известный
361
127
Кто-нибудь, помогите, как сделать так, что бы если код видит открытый диалог, то готило к 2 (у кода ниже флудит: 1 *1500 мл* 1 *1500 мл* 1 *1500 мл* ... после дэтекта в чате hnnssy)

2:
Loop
{
GetChatLine(0, chat)
if chat contains hnnssy
{
addChatMessage("takecar")
kal:
sleep 1500
Send {1 down}
sleep 5
Send {1 up}
goto kal
}
else
if (!isDialogOpen())
goto 2
}
return
Любой диалог?
 
  • Нравится
Реакции: ceregapro1

ceregapro1

Известный
61
1
Почему функция setCoordinates не работает когда ты в машине и как сделать что бы это работало?
 

GeMoVeR

Новичок
2
0
Нужна помощь. Нужно что-бы при запуске пограммыы ddnet-client срабатывал скрипт воздействующий на ПКМ, который если зажимать ПКМ более 2 секунд, сбрасывал зажатие. И это время можно будет изменять скажем с 2 секунд на 0.4 секунды.