Требуется помощь с AHK.

Статус
В этой теме нельзя размещать новые ответы.

TwenKey

Новичок
Автор темы
8
0
У меня 4 вопроса.
1. Где-то увидел в скрипте, нормальное исп-ние команд. А именно, не ашотский способ, который юзаю я :
AutoHotKey:
:?:/command::

{
%Содержание%
}
return
При котором если написать допустим "/comman", потом свернуть чат (Ф6) и снова его открыть, и затем дописать "d". То команда не сработает, ибо это примитивная функция работающяя внешне, и не затрагивающая Самп. А мне нужно именно, что-бы она прочитывала, то что у меня уже написано. И не срабатывала если я напишу в чате "кек/command", а только тогда когда будет написано "/command", и активировалось ENTER`ом. Ну я неприхотиливый, можно и Энтером, и SPACE`om.
2. На счёт немного другого, схожий вопрос с предъидущим. Возьмём примитивную какую-нибуть команду с параметрами.
AutoHotKey:
:?:/check::
{
sleep 50
SendPlay /check{space}
sleep 20
Input, check_nick, V,{enter}{space}
sleep 20
SendChat("/mdc") ; Открытие базы данных.
sleep 150
SendPlay {down 1}{enter} ; Выбор "Пробить".
sleep 150
SendPlay %check_nick%{enter}
sleep 150
}
return
Банальная команда, но как-вы заметили, при написании команды /check, оно стирается, и приходится это фиксить 4-й строкой, но есть трабл. Если в 3 строке не установить/установить малую задержку, то на выходе он получает примерно "/checheck". 50 - нормальная задержка. Но заметно мигание этой команды. И при быстром написании, может сбится. В чём вопрос? Можно-как-то обойти мигание команды, тем самым убрать 3 и 4 строку.
3. Он заключается немного в другом, довольно прост, ибо в просторах инета я не нашёл такого-го. Как я могу наведясь на человека, заключить его айди в какую-то переменную?
4. Тоже простой вопрос, на который ответ - одна строка. Какой командой можно, поставить на человеке маркер, просто одиночный маркер, зациклить и сам смогу.
SAMPudf присутствует.
 
Последнее редактирование:

#Rin

Известный
Всефорумный модератор
1,214
1,043
В SAMP UDF'е описаны все функции, лень прочитать?
У меня 2 вопроса.
Ты уже минимум 4 задал.
1. Где-то увидел в скрипте, нормальное исп-ние команд. А именно, не ашотский способ, который юзаю я :
Ну раз увидел че не скопировал у него?
AutoHotKey:
$~NumpadEnter::
$~Enter::
if (isInChat() = 1 && isDialogOpen() == 0)
{
    Sleep 250
    dwAddress := dwSAMP + 0x12D8F8
    chatInput := readString(hGTA, dwAddress, 256)
    if (chatInput == "/test") ; Или RegExMatch
    {
       
    }
}
Лучше только командный процессор.

Банальная команда, но как-вы заметили, при написании команды /check, оно стирается, и приходится это фиксить 4-й строкой, но есть трабл. Если в 3 строке не установить/установить малую задержку, то на выходе он получает примерно "/checheck". 50 - нормальная задержка. Но заметно мигание этой команды. И при быстром написании, может сбится. В чём вопрос? Можно-как-то обойти мигание команды, тем самым убрать 3 и 4 строку.
Документацию читать, и понять что функция автозамены, естественно будет затирать введенный текст.
3. Он заключается немного в другом, довольно прост, ибо в просторах инета я не нашёл такого-го. Как я могу наведясь на человека, заключить его айди в какую-то переменную?
AutoHotKey:
idforped := getIdByPed(getTargetPed())
4. Тоже простой вопрос, на который ответ - одна строка. Какой командой можно, поставить на человеке маркер, просто одиночный маркер, зациклить и сам смогу.
С такими вопросами никак, разобраться с работой с памятью, так как готовой функции в ахк нету.
 

TwenKey

Новичок
Автор темы
8
0
Ты уже минимум 4 задал.
Сначала думал задать 2, потом наросли ещё вопросы. Через минуту после публикации, заметил и заменил на число 4.
Ну раз увидел че не скопировал у него?
Закрытый код был, просто экзешник.

Спасибо за развёрнутый ответ, вопросы закончились.
 

#Rin

Известный
Всефорумный модератор
1,214
1,043
Закрытый код был, просто экзешник.
Все AHK скриптеры (99.9 процентов) понятия не имеют как закриптовать код.
Так что все возможные методы защиты, что могут реализовать на стороне AHK кода бессмысленны.

Так что любой EXE с AHK кодом на данный момент вскрывается.
 
Статус
В этой теме нельзя размещать новые ответы.