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

Vlad Horii

Известный
Проверенный
310
171
Не работает РП Рация и я так и не понял как из ини файла Ник свой вставить в РП отыгровку
Честно, в ахк не особо шарю, да и код не проверял. Мб будет работать:
AutoHotKey:
IniRead, Tag, %A_MyDocuments%\GTA San Andreas User Files\SAMP\setting.ini, Setup, Tag
$~NumpadEnter::
$~Enter::
if (IsInChat() && !IsDialogOpen())
{
    Sleep, 170
    chatInput := readString(hGTA, dwSAMP + 0x12D8F8, 256)
    if RegExMatch(chatInput, "^/r (.*)", out)
        sendChat("/me сказал в рацию '"out1 "'")
    ; ==========================================
    if RegExMatch(chatInput, "^/setTag (.*)", Tag)
    {
        iniwrite, %Tag%, %A_MyDocuments%\GTA San Andreas User Files\SAMP\setting.ini, Setup, Tag
        addChatMessageEx(0xff8ca6,"Новый тэг: "Tag)
    }
}
return
 

Jaden_Moore

Новичок
22
0
Честно, в ахк не особо шарю, да и код не проверял. Мб будет работать:
AutoHotKey:
IniRead, Tag, %A_MyDocuments%\GTA San Andreas User Files\SAMP\setting.ini, Setup, Tag
$~NumpadEnter::
$~Enter::
if (IsInChat() && !IsDialogOpen())
{
    Sleep, 170
    chatInput := readString(hGTA, dwSAMP + 0x12D8F8, 256)
    if RegExMatch(chatInput, "^/r (.*)", out)
        sendChat("/me сказал в рацию '"out1 "'")
    ; ==========================================
    if RegExMatch(chatInput, "^/setTag (.*)", Tag)
    {
        iniwrite, %Tag%, %A_MyDocuments%\GTA San Andreas User Files\SAMP\setting.ini, Setup, Tag
        addChatMessageEx(0xff8ca6,"Новый тэг: "Tag)
    }
}
return
На этот раз работает, только реагирует на всё что связано с " / ". А ещё когда хочешь написать Нон РП сообщение в скобках, то оно тоже дублирует его в /me. Сделай проверка или просто /me сказал в рацию. ЕЩЁ НЕ ПОНЯТНО ЧТО С ТЭГОМ. ПОМОГИ ПЖ С КОДОМ)
 
Последнее редактирование:

Jaden_Moore

Новичок
22
0
Как сделать, чтобы автоматически определяло, где ты находишся и когда ты делаешь доклад, то указывал пост на котором ты находишся? И помогите с автодокладом!
 

ШPEK

Известный
1,476
524
как сделать чтобы при выборе определённого пункта в диалоговом окно выводился какой-то текст?
 

OreeeOOO

Новичок
2
0
Помогите пожалуйста , я овощ в АХК , пишу очень примитивные скрипты , есть ли такой скрипт что бы когда - пример
Стоимость банковской карты составляет 3.000$. Вы готовы оплатить данную сумму?
!!!! Если клиент согласится, то спрашиваем паспорт !!!!
/todo Хорошо, покажите мне ваш паспорт.*Протягивая руку вперед.
!!!! После предъявления паспорта продолжаем отыгровку !!!!
/todo Вы отлично получились на фотографии!*Взяв паспорт из рук Клиента.
Через пару минут Ваша карта будет готова.
/do Аппарат включен.
/me нажал кнопку "пуск"
/do Аппарат печатает банковскую карту.
/do Аппарат отпечатал банковскую карту.
/todo А вот и она*возвращая паспорт и передавая новую карту с пин-кодом
/bankmenu id
2. Как мне сделать так называемого *бота* который сам все это будет делать и скринить все , очень нужно!Или скиньте шаблон где это все сделано уже , но это очень нужно!
 
Последнее редактирование:

OreeeOOO

Новичок
2
0
Подскажите как сделать систему ,что бы в нужный момент скрипт останавливался, а когда другой человек произносил *да* он автоматически продолжал работу?
Я работаю в AHK Unicode 64-bit
 

Di3

Участник
432
20
Ребят,кто может помочь с диалогами? Пытаюсь как то разобраться,но не очень получается,прошу не кидаться тапками.

Код:
Vmenucar:=0
SendInput,{F6}{right 15}{BS30}{enter}
showDialog("2", "{FF0000}Информация о ТС","Отмена`nСписок т/с`nВвести ид кара[400-611]`nВвести название Т/С`nУзнать название тс по ид игрока","Закрыть","Далее")
carmenu:
if(isDialogOpen() )
  {
   goto carmenu
  }
Else
  {
   Vmenucar:=getDialogIndex()
  }
  If ( Vmenucar = 1 )
  {
return
  }
If ( Vmenucar = 2 )
          {
          showDialog("2", "{FF0000}Список ТС ","`nАвтосалон СФ`nАвтосалон ЛВ`nАвтосалон ЛС","Закрыть","Далее")
           carmenu1:
if(isDialogOpen() )
  {
   goto carmenu1
  }
Else
  {
   Vmenucar1:=getDialogIndex()
  }
Как сделать так,чтобы диалог при нажатии ESC закрывался,а не открывался дальше и на "Закрыть" диалог закрывался,а не открывался далее,а на "далее" и клавишу энтр , ЛКМ продолжал работу по пунктам
 

Vlad Horii

Известный
Проверенный
310
171
Ребят,кто может помочь с диалогами? Пытаюсь как то разобраться,но не очень получается,прошу не кидаться тапками.

Код:
Vmenucar:=0
SendInput,{F6}{right 15}{BS30}{enter}
showDialog("2", "{FF0000}Информация о ТС","Отмена`nСписок т/с`nВвести ид кара[400-611]`nВвести название Т/С`nУзнать название тс по ид игрока","Закрыть","Далее")
carmenu:
if(isDialogOpen() )
  {
   goto carmenu
  }
Else
  {
   Vmenucar:=getDialogIndex()
  }
  If ( Vmenucar = 1 )
  {
return
  }
If ( Vmenucar = 2 )
          {
          showDialog("2", "{FF0000}Список ТС ","`nАвтосалон СФ`nАвтосалон ЛВ`nАвтосалон ЛС","Закрыть","Далее")
           carmenu1:
if(isDialogOpen() )
  {
   goto carmenu1
  }
Else
  {
   Vmenucar1:=getDialogIndex()
  }
Как сделать так,чтобы диалог при нажатии ESC закрывался,а не открывался дальше и на "Закрыть" диалог закрывался,а не открывался далее,а на "далее" и клавишу энтр , ЛКМ продолжал работу по пунктам
чекни, код легкий и понятный.
source code in Text only(https://dumpz.org/2705164/)
 

Jaden_Moore

Новичок
22
0
Numpad2::
a:=1
menu:=1
ShowDialog("2", "{A818FF}Название{A818FF}", "Первая строка`nВторая строка`nТретья строка`nЧетвертая строка`n`nПятая строка`nШестая строка`nСедьмая строка`nВосьмая строка`nДевятая строка`nДесятая строка`nОдинадцатая строка`nДвенадцатая строка`nТринадцатая строка","Отмена")
return

~UP::
if a>1
{
a:=a-1
}
return
~Down::
if a<b
{
a:=a+1
}
return

~Enter::
if (menu==1)
{
punk:="label"+a
Gosub, %punk%
menu:=0
}
return

label1:
SendMessage, 0x50,, 0x4190419,, A
Sleep 100
ShowDialog("2", "{A818FF}Название{A818FF}", "1`n2`n3`n4`n5`n6`n7`n8", "Ок", "Нет")
return

помогите, я хочу чтобы после второго диалогового окна, после выбора любого пункта чалась отыгровка, как?
 

crab1k

Известный
34
4
Numpad2::
a:=1
menu:=1
ShowDialog("2", "{A818FF}Название{A818FF}", "Первая строка`nВторая строка`nТретья строка`nЧетвертая строка`n`nПятая строка`nШестая строка`nСедьмая строка`nВосьмая строка`nДевятая строка`nДесятая строка`nОдинадцатая строка`nДвенадцатая строка`nТринадцатая строка","Отмена")
return

~UP::
if a>1
{
a:=a-1
}
return
~Down::
if a<b
{
a:=a+1
}
return

~Enter::
if (menu==1)
{
punk:="label"+a
Gosub, %punk%
menu:=0
}
return

label1:
SendMessage, 0x50,, 0x4190419,, A
Sleep 100
ShowDialog("2", "{A818FF}Название{A818FF}", "1`n2`n3`n4`n5`n6`n7`n8", "Ок", "Нет")
return

помогите, я хочу чтобы после второго диалогового окна, после выбора любого пункта чалась отыгровка, как?
Выше кидали как работать с диалогом
 

Jaden_Moore

Новичок
22
0
как сделать например в рацию пишут Докладываю, и чтобы сразу я отвечал Доклад принят? А ещё помогите с РП рацией мозг ломаю!!