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

#Rin

Известный
Всефорумный модератор
1,214
1,036
Чуток не понимаю). можешь показать как выглядит с командой. /invite и /me передал форму
Погуглить нельзя было?

AutoHotKey:
$~NumpadEnter::
$~Enter::
If (isInChat() = 1 && isDialogOpen() = 0)
{
    Sleep 250
    dwAddress := dwSAMP + 0x12D8F8
    chatInput := readString(hGTA, dwAddress, 256)
    If (chatInput == /invite) {
        SendChat("/me передал форму")
    }
}
 

Galilei

Новичок
16
1
Погуглить нельзя было?

AutoHotKey:
$~NumpadEnter::
$~Enter::
If (isInChat() = 1 && isDialogOpen() = 0)
{
    Sleep 250
    dwAddress := dwSAMP + 0x12D8F8
    chatInput := readString(hGTA, dwAddress, 256)
    If (chatInput == /invite) {
        SendChat("/me передал форму")
    }
}
Выдаёт ошибку.
 

Вложения

  • bandicam 2018-02-12 17-05-32-652.jpg
    bandicam 2018-02-12 17-05-32-652.jpg
    178.5 KB · Просмотры: 287

Adam_Rockwell

Активный
143
25
У меня есть две точки (х1,у1) (х2,у2)
Подскажите код, чтобы персонаж из первой точки повернулся под нужным углом на вторую и направился на неё.
 

Patrickkk

Участник
162
19
Значит где-то косяк в коде. Закрывается с ошибкой? Кинь код или скриншот ошибки
Ошибки нет, просто закрывает и открывает, вот код:

HTML:
#NoEnv ;
SendMode Input ;
SetWorkingDir %A_ScriptDir% ;
#UseHook
#SingleInstance, force
#Include SAMP.ahk
iniread, pass, config.ini, Setup, Pass

SetTimer, autologin, 1 ; Таймер для проверки текста в диалоге с задержкой в 1 миллисек
autologin:
if (isDialogOpen() && RegExMatch(getDialogText(), "Введите пароль ниже")) {
    Sleep 1000
    SendInput, %pass%{enter}
  return
    }
return
 

#Rin

Известный
Всефорумный модератор
1,214
1,036
Ошибки нет, просто закрывает и открывает, вот код:

HTML:
#NoEnv ;
SendMode Input ;
SetWorkingDir %A_ScriptDir% ;
#UseHook
#SingleInstance, force
#Include SAMP.ahk
iniread, pass, config.ini, Setup, Pass

SetTimer, autologin, 1 ; Таймер для проверки текста в диалоге с задержкой в 1 миллисек
autologin:
if (isDialogOpen() && RegExMatch(getDialogText(), "Введите пароль ниже")) {
    Sleep 1000
    SendInput, %pass%{enter}
  return
    }
return
#Persistent
 

Rental

Участник
60
1
Можете расписать как работает функция getStreamedInPlayersInfo() в Samp udf? Получается она создает какой-то массив, но я не понимаю как он выглядит.
Код:
for r, o in list
{
addChatMessage(o.name)
}
И изменяя o.name на o.id, o.ped данные меняются. Что вообще обозначают в for r, o?
 

#Rin

Известный
Всефорумный модератор
1,214
1,036
Можете расписать как работает функция getStreamedInPlayersInfo() в Samp udf? Получается она создает какой-то массив, но я не понимаю как он выглядит.
Код:
for r, o in list
{
addChatMessage(o.name)
}
И изменяя o.name на o.id, o.ped данные меняются. Что вообще обозначают в for r, o?
getStreamedInPlayersInfo() - Это функция возвращающая объект с информацией о игроках в зоне стрима. Ее нельзя просто так вывести на экран.
Объект чутка отличается от массива, можно сказать что объект это несколько массивов.

for - Это цикл, можно сказать что цикл перебора.
AutoHotKey:
for line, value in list
{
     MsgBox, В строке %line% следующий текст: %value%
}
line - Содержит количество интеграций цикла (Номер цикла, начиная с 1)
value - Значение которое храниться в объекте/массиве
list - Переменная в который идет поиск.

Грубо говоря, пока в переменной list что-то есть, перебираем ее содержимое.

В других языках цикл for выглядеть по другому.
В C++ например:
C++:
for (int i = 0; i < len; i++)
{
    MessageBoxA(NULL, "Текст", "Windows Message", MB_OK);
}
int i - Переменная которую мы объявили только на время работы цикла.
i < len - Условие работы цикла, пока i меньше чем len
i++ - После каждой интеграции (выполнения) цикла прибавляем к переменной i единицу.
 
Последнее редактирование:
  • Нравится
Реакции: Rental

madrasso

Потрачен
883
324
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Есть ли такая функция что бы чекать время?
Ну, описание
Допустим мне нужно сделать так что бы когда время равнялось 10:43, то он выполнял мною заданную функцию?
 

Rental

Участник
60
1
getStreamedInPlayersInfo() - Это функция возвращающая объект с информацией о игроках в зоне стрима. Ее нельзя просто так вывести на экран.
Объект чутка отличается от массива, можно сказать что объект это несколько массивов.

for - Это цикл, можно сказать что цикл перебора.
AutoHotKey:
for line, value in list
{
     MsgBox, В строке %line% следующий текст: %value%
}
line - Содержит количество интеграций цикла (Номер цикла, начиная с 1)
value - Значение которое храниться в объекте/массиве
list - Переменная в который идет поиск.

Грубо говоря, пока в переменной list что-то есть, перебираем ее содержимое.

В других языках цикл for выглядеть по другому.
В C++ например:
C++:
for (int i = 0; i < len; i++)
{
    MessageBoxA(NULL, "Текст", "Windows Message", MB_OK);
}
int i - Переменная которую мы объявили только на время работы цикла.
i < len - Условие работы цикла, пока i меньше чем len
i++ - После каждой интеграции (выполнения) цикла прибавляем к переменной i единицу.

А можешь показать/расказать как выглядит этот объект и как происходит его обработка?
 

#Rin

Известный
Всефорумный модератор
1,214
1,036
Есть ли такая функция что бы чекать время?
Ну, описание
Допустим мне нужно сделать так что бы когда время равнялось 10:43, то он выполнял мною заданную функцию?
AutoHotKey:
If (A_Hour == 10 and A_Min == 43) {
    MsgBox, Текущее время 10:43
}

А можешь показать/расказать как выглядит этот объект и как происходит его обработка?
Что тут объяснять ты в первом посту еще все расписал:
o.name
o.id
o.ped
o - Это название второй переменной в цикле for
 
  • Нравится
Реакции: Cesar Ballard

madrasso

Потрачен
883
324
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
AutoHotKey:
If (A_Hour == 10 and A_Min == 43) {
    MsgBox, Текущее время 10:43
}


Что тут объяснять ты в первом посту еще все расписал:
o.name
o.id
o.ped
o - Это название второй переменной в цикле for

Спасибо, а если секунды указывать это будет if (A_Hour == 10 and A_Min == 43 and A_Sec == 00) ?