AHK | Help. Помогите с переменной.
|
|
samartinell |
Дата: Вторник, 04.09.2018, 23:58 | Сообщение # 1
|
Новичок
Сообщений: 6
Статус: Offline
|
В общем то хочу сделать скриптик для админки на нубо рп. И хочу чтобы если кто-то писал в /a, то я в свою очередь мог выдавать за него наказание подобно работы admin tools. Проблема для меня одна: не могу найти переменную, чтобы наказание, id, длительность наказания и причина выводилась сама на экран, думаю вы меня поняли Заранее спасибо.
Сообщение отредактировал samartinell - Среда, 05.09.2018, 00:01 |
|
|
|
slavawar |
Дата: Среда, 05.09.2018, 07:09 | Сообщение # 2
|
Проверенный
Сообщений: 172
Статус: Offline
|
Код #Persistent #Include SAMP.ahk
SetTimer, report, on File := % A_MyDocuments "\GTA San Andreas User Files\SAMP\chatlog.txt"
report: lastline := GetNewLine(File) if RegExMatch(lastline, "[A] (?<nick_adm>.*): (?<id>.*) (?<text>.*)", c_) { SendChat("/t " c_id " " c_text) } return
GetNewLine(filename) { static old static new if (!old) { FileGetSize, old, %filename% new := old } while old = new { sleep 100 FileGetSize, new, %filename% } old := new Loop, read, %filename% if A_LoopReadLine { last := A_LoopReadLine } return last }
Твою строку чата я не знаю, но примерно как должно быть сделал. Скинь строчку из чат лога, примерно как отправляют, я тебе регулярку сделаю. А так основной каркас работы скрипта будет такой.
Мои темы: [AHK] Шифратор текста [AHK] Акцент 3 в 1 [C#] Генератор RP ников
|
|
|
|
samartinell |
Дата: Среда, 05.09.2018, 16:50 | Сообщение # 3
|
Новичок
Сообщений: 6
Статус: Offline
|
Спасибо большое) Вот строчка [A] Samp_Kryt[0]: /ban 0 1 1 Добавлено (05.09.2018, 17:15) --------------------------------------------- Проверил скриптик, не хочет работать, сделал как должна выглядеть строка(вроде как) с id админа, но результата 0. Может лохонулся с UDF, может со строкой, но скрипт запускается, а реакции от админ чата 0
Сообщение отредактировал samartinell - Среда, 05.09.2018, 16:58 |
|
|
|
slavawar |
Дата: Среда, 05.09.2018, 18:52 | Сообщение # 4
|
Проверенный
Сообщений: 172
Статус: Offline
|
samartinell, потому что дело вероятно в регулярном выражении.
Код if RegExMatch(lastline, "\[A\] (?<adm>.*)\[.*\]: \/ban (?<id>.*) (?<one>.*) (?<two>.*)", c_) { SendChat("/ban " c_id " " c_one " " c_two) }
Мои темы: [AHK] Шифратор текста [AHK] Акцент 3 в 1 [C#] Генератор RP ников
|
|
|
|
samartinell |
Дата: Четверг, 06.09.2018, 17:29 | Сообщение # 5
|
Новичок
Сообщений: 6
Статус: Offline
|
Спасибо большое, всё работает) Ещё хотел бы попросить кое что, чтобы команда выполнялась не автоматически, а с помощью нажатия на какую то клавишу, а то не очень хотелось бы, чтобы кто-то лишний забанил через меня человека путём написания сообщения или репорта.
Сообщение отредактировал samartinell - Четверг, 06.09.2018, 18:14 |
|
|
|
|