Вернуться   МПМ Былины - Мир Древней Руси > Для игроков > Клиенты для игры

Клиенты для игры Все что связано с клиентами для игры. Jmc, MMC, ZMud etc...

Ответ
 
Опции темы Опции просмотра
Старый 23.05.2008, 01:26   #1
zallexx
Знакомый Мадера
 
Регистрация: 03.12.2004
Сообщений: 82
По умолчанию

Развивая тему $_
Код:
P::trig
{
	$buf = $_;
	$: = '';
	P::echo "\003I".$buf;
	P::echo "Итить-колотить моя строка!";
} '^Вы улыбнулись.$';
- работает, но с цветами надо заморачиваться.
Код:
P::trig
{
	P::timeout
	{
		P::echo("тыщ-пыщ");
	} 1, 1;
} '^Вы улыбнулись.$';
- тоже работает, но там лишние пустые строчки появляются.
Цитата:
Сообщение от Раххаль
создавать ещё один триггер на любую строку (^.*$), который выведет необходимый текст а затем удалится
А как удалить добавленный через P::trig тригер, что-то я не догоняю( И кстати что там за $flags? Может у кого-то завалялся readme.txt где "флаги подробно расписаны"? Буду оч. благодарен если кто объяснит про удаление и эти флаги)
zallexx вне форума   Ответить с цитированием
Старый 23.05.2008, 13:01   #2
Тролль
Знакомый Мадера
 
Регистрация: 09.11.2006
Сообщений: 54
По умолчанию

Цитата:
Сообщение от zallexx Посмотреть сообщение
Развивая тему $_
Код:
P::trig
{
	$buf = $_;
	$: = '';
	P::echo "\003I".$buf;
	P::echo "Итить-колотить моя строка!";
} '^Вы улыбнулись.$';
- работает, но с цветами надо заморачиваться.
Код:
P::trig {
	$: = '';
	P::echo CL::unparse_colors($;);
	P::echo "Итить колотить твоя строка!";
} '^Вы улыбнулись\.$';
сойдёт?
Тролль вне форума   Ответить с цитированием
Старый 23.05.2008, 16:31   #3
zallexx
Знакомый Мадера
 
Регистрация: 03.12.2004
Сообщений: 82
По умолчанию

ну, во-первых, после $: = '' будет '' и в $; и в $_, но это не суть)
по сути - спасибо) ништяк)

Последний раз редактировалось zallexx; 23.05.2008 в 16:45.
zallexx вне форума   Ответить с цитированием
Старый 23.05.2008, 17:08   #4
zallexx
Знакомый Мадера
 
Регистрация: 03.12.2004
Сообщений: 82
По умолчанию

2 diver:
Самый имхо нормальный вариант в итоге:
Код:
P::trig
{
	P::echo CL::unparse_colors($;);
	P::echo "Итить-колотить моя строка!";
} '^Вы улыбнулись\.$', 'g';
zallexx вне форума   Ответить с цитированием
Старый 24.05.2008, 19:09   #5
diver
Новичок
 
Регистрация: 10.07.2004
Сообщений: 40
По умолчанию

Цитата:
Сообщение от Тролль Посмотреть сообщение
Код:
P::trig {
	$: = '';
	P::echo CL::unparse_colors($;);
	P::echo "Итить колотить твоя строка!";
} '^Вы улыбнулись\.$';
сойдёт?
самое то что доктор прописал =)
diver вне форума   Ответить с цитированием
Старый 24.05.2008, 18:53   #6
diver
Новичок
 
Регистрация: 10.07.2004
Сообщений: 40
По умолчанию

Цитата:
Сообщение от zallexx Посмотреть сообщение
Развивая тему $_
Код:
P::trig
{
	$buf = $_;
	$: = '';
	P::echo "\003I".$buf;
	P::echo "Итить-колотить моя строка!";
} '^Вы улыбнулись.$';
блин, как я сам не допер! =) прикольно.
diver вне форума   Ответить с цитированием
Старый 24.05.2008, 19:02   #7
diver
Новичок
 
Регистрация: 10.07.2004
Сообщений: 40
По умолчанию

Цитата:
Сообщение от zallexx Посмотреть сообщение
А как удалить добавленный через P::trig тригер, что-то я не догоняю( И кстати что там за $flags? Может у кого-то завалялся readme.txt где "флаги подробно расписаны"? Буду оч. благодарен если кто объяснит про удаление и эти флаги)
Возможные флаги:
'-' - disable - запретить применение этого триггера (по умолчанию все триггеры создаются активными)
'g' - gag - клиент не должен печатать совпавшую строку
'm' - multiple - ищутся все вхождения <regexp> в строке, а не только первое
<число> - priority - приоритет, определяющий порядок применения триггеров. Триггеры применяются в порядке уменьшения приоритетов. По умолчанию у всех триггеров приоритет равен 1000.
's'|'n' - save|nosave - сохранять ли триггер в файл конфигурации при выходе
'f' - fall-through - обычно клиент прекращает поиск триггеров, после
первого совпадения. Если необходимо применять
другие триггеры после этого, при его определении
необходимо указать флаг 'f'.
'x<число>' - максимальное число срабатываний, после которого
триггер автоматически отключатся, по умолчанию не ограничено, счетчик сбрасывается по команде /enable
Пример простого триггера:
action {^You are hungry\.$} {get bread $container;eat bread} 1000gs:CORE

пользуюсь я этим так:

Код:
P::trig {

  if (CheckLore ("$1") > 0) {
    Lenor::debug ("Предмет -$1- уже известен.");
  } else {
    Lenor::debug ("Новый предмет -$1-.");
    $strItemName = "$1";
    P::enable ("ITEMDESCRIPTION");
  };
} '^Предмет "(.+)", тип : (\S+)', f1;

P::trig {
  P::disable ("ITEMDESCRIPTION");
  Lenor::debug ("Добавляем новый предмет -$strItemName-.");
  AddToShortLore ($strItemName . "," . $AC . $strItemDesc . $Mat);
} '^$', 'f1:ITEMDESCRIPTION';

P::trig {$AC .= "$1/";} '^защита \\(AC\\) : (\d+)', 'f1:ITEMDESCRIPTION';
и так далее
так что отменять триггер необходимости не возникает. он итак не включается без надобности.

доку к ммц от автора можно взять тут:
http://mmc.mud.ru/mmc.txt
и тут:
Вложения
Тип файла: txt mmc.txt (58.8 Кб, 1 просмотров)

Последний раз редактировалось diver; 24.05.2008 в 19:08.
diver вне форума   Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 05:05.


Powered by vBulletin® Version 3.8.1
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot