PDA

Просмотр полной версии : макрос: перенаправление чата


AmsTaFF
05.12.2006, 08:56
Если вам пишут в приват, общий чат или гильд чат, бот будет писать другому игроку то, что ему пишут.
control/macros.txt
################################################## ################
###############Перенаправление привата, ГЧ и общего###############
################################################## ################
#################!!!!!НЕ ЗАБУДЬ ПОМЕНЯТЬ НИК!!!!!#################
################################################## ################

automacro CheckPM {
pm /./
call RePmSend
}

automacro CheckPubM {
pubm /./
call RePubSend
}

automacro CheckGuM {
guild /./
call ReGuSend
}
####################!!!!!НИЖЕ МЕНЯЙ НИК!!!!!#####################

macro RePmSend {
do pm "Ник" [PM!!] $.lastpm : $.lastpmMsg
do eval WinUtils::playSound('D:\Games\RO\БОТЫ\Sound\pr ivat.wav');
}

macro RePubSend {
do pm "Ник" [PUB!!!] $.lastpub : $.lastpubMsg
do eval WinUtils::playSound('D:\Games\RO\БОТЫ\Sound\pu blicchat.wav');
}

macro ReGuSend {
do pm "Ник" [G] $.lastguild : $.lastguildMsg
do eval WinUtils::playSound('D:\Games\RO\БОТЫ\Sound\sy stemmessage.wav');
}

################################################## ################
########################## !!!КОНЕЦ!!! ###########################
################################################## ################

ЗЫ: Скрипт разработан Алексом
by imchotep

FragMent
26.12.2007, 01:22
Привет, не подскажете как сделать так что я говорил боту фразу , а он говорил это в pubm ??
Спасиб...

4epT
26.12.2007, 03:56
FragMent, посмотри в гайде условие "pm"

напиши АМ, типо: если ПМка пришла от тебя, то напечатать это сообщение в общий чат (команда "c")

masterspirta
26.12.2007, 12:16
Вроде так но утверждать не буду не проверял...
Если неправильно не ругайтесь...мне скучно...:(
automacro CheckPM {
pm /./
if ($.lastpub == "ник") goto psend
call RePmSend
goto end
:psend
call PSend
:end
}

macro RePubSend {
do pm "Ник" [PUB!!!] $.lastpub : $.lastpubMsg
do eval WinUtils::playSound('D:\Games\RO\БОТЫ\Sound\pu blicchat.wav');
}

macro PSend {
do c $.lastpubMsg
}

Если работает то отпишите

4epT
26.12.2007, 14:15
masterspirta, конешно не работает, т.к. АМ не поддерживает условие goto и метки :psend, это должно быть в теле макроса.
вот у тебя в АМ нвписано условие pm, и тут же ниже "$.lastpub" а это с другой оперы, думаю тебе нужен $.lastpm. И не $.lastpubMsg соответственно.

masterspirta, автору "do pm "Ник" [PUB!!!] $.lastpub : $.lastpubMsg" вовсне не нужно, прикинь ты отсылаешь боту сообщение а он тебе же его отсылает..

masterspirta
26.12.2007, 14:39
automacro CheckPM {
pm /./
call RePubSend
}

macro RePubSend {
if ($.lastpm == "ник") goto Psend

do pm "Ник" [PUB!!!] $.lastpm : $.lastpmMsg
do eval WinUtils::playSound('D:\Games\RO\БОТЫ\Sound\pu blic chat.wav');
goto end

:Psend
do c $.lastpmMsg

:end
}

ня

4epT
26.12.2007, 14:55
я бы сделал через:
pm /./, "ник"

masterspirta
26.12.2007, 15:15
и что бы было? вернее как это работает?

FragMent
26.12.2007, 21:06
люди но не понимаю я =(( я часа 2 сидел так и сяк пробывал не получалось, потому и тут стпросил... в конце думалка вообще отказала..
чёрт, напиши пожалуйста как надо сделать - спасибо..

4epT
27.12.2007, 03:24
masterspirta, а ты в гайде посмотри!

FragMent, а я тебя писать не хачу!

masterspirta
27.12.2007, 11:02
Чорт ты вот щас не прав, смотри:

у нас есть 2 автомакероса условием запуска которых есть
pm /./, "снежок"
pm /./
к нам приходит сообщение от
снежок: привет
в итоге у нас будут срабатывать оба автомакроса один настроеный на обработку всех поступающих и перенапровление их на ник снежок (например) в ПМ, а другой только от отдельного человека!!!

automacro CheckPM {
pm /./, "снежок"
call PubSend
}
macro PubSend {
do c $.lastpmMsg
}

automacro CheckPM {
pm /./
call RePmSend
}
macro RePmSend {
do pm "Ник" [PM!!] $.lastpm : $.lastpmMsg
do eval WinUtils::playSound('D:\Games\RO\БОТЫ\Sound\pr ivat.wav');
}

Гдето я читал на форуме про преоритеты макросов, но это излишнии сложности!!!!

4epT
28.12.2007, 19:52
я так понимаю, что ему нужно было просто чтоб:

ты пишешь боту, он это пишет в общаг.

т.е. про существование других макросов в файле не обсуждается.

если же они существуют, то действительно нужно либо делать в 1 макросе (проверку на ник) или ставить приоритеты (там нет ничего сложного, добавится всего 1 строчка)

Foxik`
23.02.2009, 14:53
а что если сделать макрос для защиты от гмов - боту пишут в приват, он пише то же самое в приват другому рандомному игроку поблизости и отвечает первому игроку то что ответил ему второй игрок) я конечн закрутил, и не представляю как он будет выбирать второго игрока, но помоему идея хорошая)

4epT
23.02.2009, 21:18
ага, ты видишь ПМ "(From: [GM]06): это проверка на бота, хватит бить моба"
ты это отсылаешь ещё кому-нить, он получает "(From: ВасяПупкин): это проверка на бота, хватит бить моба", он соответственно тебе отвечает: "Пошёл на х**, ВасяПупкин, ты не ГМ и не хер меня разводить"