Просмотр полной версии : MMC. Вопрос.
Загоревшись возможностью сравнить mmc и zmud, попытался попользоваться первым из них, но наткнулся на проблему при отладке конфига.
Вопрос: как заставить клиент показывать отсылаемые триггерами в мад строки?
hook {
my $mess = shift;
# тут ты можешь с $mess делать что угодно
echo $mess;
$mess;
} 'send';
а сейчас придут гуру и расскажут, как сделать лучше и где у меня ошибки :)
Юзай repr().
Пример:trig{
MUD::repr(1);
sendl("есть пирог сумка");
MUD::repr(0);
} '^Вы думаете о еде\.$', "n:TICK";
О, может здесь можно задать общий вопросик ? :)
Первое. Есть такое не много переработанное.
http://academy.aladon.ws/files/mmc/mmc5.1.zip
Собственно вопрос.
После некоторых конфигов и в этой (версии Керда) у меня после логина на сервер пропадает отображение вводимой мною информации.
Как сделать, это отображаемым ?
Переплут
05.09.2006, 09:00
http://academy.aladon.ws/files/mmc/mmc5.1.zip
Собственно вопрос.
После некоторых конфигов и в этой (версии Керда) у меня после логина на сервер пропадает отображение вводимой мною информации.
Как сделать, это отображаемым ?
я не смотрел что приведено по ссылке, но если просто меняется цвет вводимого текста на черный -- то это решение:
LE::setcolors(11, 12);
2Переплут
Нет :(
Режим как при вводе пароля, нет движения ни курсора ни чего. Только с ключем -k вижу отображение нажатых клавиш и все.
Странно, не дают своё же редактировать ...
Вообще странность, удалил все версии ac. perl, поставил последнюю.
Теперь все показывает, и пароль тоже и в лог его пишет :(
Эт уже мне лишнего !
Каким образом можно отправить в мад строку, чтоб она проходила обработку самим клиентом?
Например, создав алиас командой "/alias {ggg} {.ud}" можно писать ggg и в мад отправится уже обработанная строка, т.е. сперва u, потом d.
С обычным sendl'ом так не получается, он отправит ".ud".
sub ali{
my ($a,$c)=shift;
Parser::run_commands($a." ".$c);
}
я юзаю в таких случаях вместо sendl вышеприведенную процедуру и все нормально ;)
Непоянл )
Что делает Parser::run_commands ?
Мне, собственно, хотелось сделать спидволков, чтоб они работали через через сам клиент, с его встроенной обработкой "." и ".." и расстановку задержек, чтоб не программить это всё самому.
Хотя, это не так сложно, наверно, будет даже лучше.
хорошо написал... вдумчиво...
не пойму только нафига что то самому крутить со спидволками когда они в клиенте на нормальном уровне? попробуй описать поточнее что ты хочешь получить ;)
Ок, ещё раз с самого начала.
В чудесном mmc есть правильная поддержка спидволков. Введённая строчка, начинающаяся на '.' или '..' трактуется как спидволк - разделяется на отдельные буквы и отсылается с паузой после каждых пяти на случай какихнить проблем по пути.
Проблема: какой командой можно из конфига отправить строчку спидволка, т. е. строчку типа '.uueeenn', чтоб клиент её обработал? Не вручную же мне их печатать Ж)
И за одно, может кто поделится инфой по полезным штукам, которые умеет mmc, но которые не описаны в хелпе а запрятаны в его встроенные модули?
И ещё вопрос.
Ктонить знает, почему не всегда просиходит событие тик? Клиент всегда выводит сообщение по поводу претика, а вот по поводу самого тика - не всегда. И в этом случае, не выполняется повешенный на тик хук.
Проблема: какой командой можно из конфига отправить строчку спидволка, т. е. строчку типа '.uueeenn', чтоб клиент её обработал? Не вручную же мне их печатать Ж)
скорее всего CMD::speedwalk("текстспидволка");
И за одно, может кто поделится инфой по полезным штукам, которые умеет mmc, но которые не описаны в хелпе а запрятаны в его встроенные модули?
попробуй посмотреть содержимое pm файликов в каталоге с mmc если у тебя их нету там, то скачай исходники mmc и просто разархивируй эти pm файлики - там увидишь много интересного
Подскажите чего неправильно делаю не хочется присваиваться переменной $tget идущий после алиаса tg текст. Т.е. я пишу, например, "tg Bumba" и хочу, чтобы после этого $tget было присвоено значение Bumba. Где-то нашел, что используют такую штуку как @_ и сделал алиас:
alias {
$tget = @_;
} "tg";
Но он не пашет :(
perldoc shift
shift @_; -- @_ -- это массив, не скаляр.
perldoc shift
shift @_; -- @_ -- это массив, не скаляр.
Не издевайся над ламером. Умных слов про скаляры не пойму, а перл для меня лишь кусок слова "перловка" :)
Лучше подскажи как правильно сделать.
vBulletin® v3.8.1, Copyright ©2000-2024, Jelsoft Enterprises Ltd. Перевод: zCarot