[Помощь] Автоматическое Увольнение
|
|
JayscoreINC |
Дата: Вторник, 07.08.2018, 23:07 | Сообщение # 1
|
Любитель
Сообщений: 30
Статус: Offline
|
Приветствую. На серверах Advance RolePlay старшие офицеры могут увольнять бойцов по просьбе обычных офицеров. Я хочу автоматизировать этот процесс. Мы имеем две строки:
![](http://i.yapx.ru/CBArU.png)
Идея следующая:
Читаем чат, ищем эти две строки. Как нашли, пишем сообщение в чат с помощью AddChatMessageEx: Имя: " [Тут имя того, кого просят уволить] ". Жетон " [Тут ID] ". Причина: " [Тут причина] ". Если вы действительно хотите уволить, то введите /confirm
После ввода /confirm:
Отыгровки... /f " Имя " был отправлен в отставку. /f " Причина . Просьба офицера " Имя офицера "
P.S: Я пытался сделать, но у меня не получалось всё прочитать корректно. Заранее благодарю за помощь <3
Добавлено (07.08.2018, 23:09) --------------------------------------------- Только щас заметил, что забыл добавить [Помощь] к названию темы ![smile](/.s/sm/2/smile.gif) Надеюсь простите :D
Некоторые люди наслаждаются дождём, другие просто промокают.
Сообщение отредактировал JayscoreINC - Вторник, 07.08.2018, 23:37 |
|
|
|
JayscoreINC |
Дата: Вторник, 07.08.2018, 23:36 | Сообщение # 2
|
Любитель
Сообщений: 30
Статус: Offline
|
[22:57:11] [R] Майор Angel_Jayscore[95]: [Глава Мед. Корпуса]: Запрашиваю отставку бойца Billy Erickson [Жетон: 49] [22:57:11] [R] Майор Angel_Jayscore[95]: [Глава Мед. Корпуса]: Причина: Игнор рации + Строя
P.S : на месте "Глава Мед Корпуса" может быть любой другой тег, именно на месте слов, [,],:, у меня в ахк не редактируется.
Некоторые люди наслаждаются дождём, другие просто промокают.
|
|
|
|
MrGPro |
Дата: Среда, 08.08.2018, 00:33 | Сообщение # 3
|
Боец
Сообщений: 202
Статус: Offline
|
Отредактируй под себя это чисто тестовый(наглядный) вариант
Код #Include SAMPUDF.ahk global theTest1 := "[R] Майор Angel_Jayscore[95]: [Глава Мед. Корпуса]: Запрашиваю отставку бойца Billy Erickson [Жетон: 49]" global theTest2 := "[R] Майор Angel_Jayscore[95]: [Глава Мед. Корпуса]: Причина: Игрон рация + Строя"
F1:: addChatMessage(theTest1) GetChatLine(0, GetText) If (RegExMatch(GetText, "\[.*\] .*\s(?<report>.*)\[\d+\][:] \[.*\][:] Запрашиваю отставку бойца (?<name>.*) \[Жетон: (?<id>\d+)\]", Kick_)) { addChatMessage(theTest2) GetChatLine(0, GetText) If (RegExMatch(GetText, "\[.*\] .*\s(?<report>.*)\[\d+\][:] \[.*\][:] Причина: (?<text>.*)", subKick_)) { addChatMessage("Имя: " Kick_name " Жетон: " Kick_id " Причина: " subKick_text ". Если вы действительно хотите уволить, то введите /confirm") } } return
$~Enter:: if (isInChat() && !isDialogOpen()) { blockChatInput() Sleep 170 dwAddress := dwSAMP + 0x12D8F8 chatInput := readString(hGTA, dwAddress, 256) unblockChatInput() Sleep, 30 if (RegExMatch(chatInput, "/confirm", match) and (Kick_name)) { addChatMessage("/f Имя: " Kick_name " был отправлен в отставку.") addChatMessage("/f Причина " subKick_text ". Просьба офицера " Kick_report) Kick_name := false } } return
Тебе помогли не забывай про благодарность >> тыкни репутацию ---------------------------------------͡ ͋̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏͋͋' ͡ ͋̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏̏͋͋' ͡ ͋̏̏̏̏̏̏̏̏̏ ----------------------------------------------------- Зам.Администратора на проекте "DayZ Epoсh SPN" сервер Arma 2OA DayZ Epoch пиратка и лицензия
Сообщение отредактировал MrGPro - Среда, 08.08.2018, 00:39 |
|
|
|
JayscoreINC |
Дата: Среда, 08.08.2018, 09:42 | Сообщение # 4
|
Любитель
Сообщений: 30
Статус: Offline
|
Это либо я тупой, что скорее всего, но когда я убираю AddChatMessage, и ставлю его на SetTimer (Чтобы всё время искало эти строки, то всё перестаёт работать ![sad](/.s/sm/2/sad.gif) Добавлено (08.08.2018, 10:04) --------------------------------------------- upd: Всё, сделал) Просто GetChatLine Читало посл. строку, нужно было поставить 1, для предпоследней
Некоторые люди наслаждаются дождём, другие просто промокают.
|
|
|
|