Подробное описание некоторый триггеров и алиасов для JMC

Хождение в группе
#alias {leader %1} {#var leader %1;gt %1 is the boss! :]}

Установка переменной $leader необходима для четкого выполнения
стандартных команд лидера группы, и только его команд.

На страничке ZMUDовских триггеров я обнаружила предложение автоматически
устанавливать лидера, когда начинаешь за кем-то следовать, что-то вроде

#act {^You now follow %1.} {leader %1}

Не знаю, насколько это удобно, поскольку я, например, очень часто присоединяюсь
к группе для болтовни или для подстраховки, и при этом хожу соло. Тут лидер нужен,
как корове седло, и при таком триггере каждый раз придется убирать $leader ручками.
Anyway, все зависит от того, хотите вы пользоваться такой штукой или нет :)

Стандартные, общепринятые триггера под лидера имеют вид
#action {$leader -- ' %1 all up} {ws}

#action {$leader -- ' %1 target %2 %3} {target %2} {4}

JmcImg01.gif#action {$leader -- ' %1 target %2'} {target %2}

JmcImg01.gif#action {$leader -- ' %1 catch} {slee}

#action {$leader -- ' %1 sneak} {sneak}

(скажем, catch и иже с ним не обязательны, это уже отсебятина)

Однако, такие триггера меня не устраивали по той причине, что любая левая фраза,
случайно содержащая заветные слова, заставляла работать триггер. Яркий пример:
я лидю группу.

<578hp 173ma 190mv>
<578hp 173ma 190mv>gt sporim, ya vam seychas zaprosto target sob'yu?
You grouptell: ' sporim, ya vam seychas zaprosto target sob'yu?'
<578hp 173ma 190mv>Mio -- ' -=* okay, let's kill sob =-'
Soi -- ' -=
okay let's kill sob'yu? *=-'

Итак, мои триггера выглядели следующим образом:

#action {$leader -- ' all sneak'} {sneak};

#action {$leader -- ' all up'} {ws};

JmcImg01.gif#action {$leader -- ' catch'} {slee};

JmcImg01.gif#action {$leader -- ' target %1 %2} {target %1} {4}

JmcImg01.gif#action {$leader -- ' target %1'} {target %1}

Однако, недолго музыка играла. Рано или поздно пришлось ходить в таких группах, где лидеры
любили при груптеллах спамить всякими красивостями, а конкретнее - префиксами.
Пример для непросвещенных:
пользуйся я префиксом (но я просто не люблю спам и поэтому стараюсь его как можно меньше
создавать), это выглядело бы так:

Falca -- ' +=I==- la la la'
Falca -- ' +=I==- hello pplz'
Falca -- ' +=I==- I've got nothing to do'
Falca -- ' +=I==- so I came here'

Разумеется, с префиксами мои триггера не работали, и я материлась относительно
того, что команды нужно давать без префикса, лидеры меня материли в свою очередь,
что я идиото-кретино, сделала бы триггера как у всех и не выпендривалась, и что бы
из этого всего вышло, неизвестно ;>> И тогда родился следующий набор триггеров: и
волки сыты, и овцы сами знаете.

#alias {pref_mode} {act_p;unact_np;get_pref} //Эта команда предназначена
для работы с преф-спамящим лидером :)
act_p, act_np, get_pref, unact_p и
unact_np описаны ниже.
#alias {nopref} {unact_p;#unvar leadpref;act_np} //А это для лидера без префикса.

#alias {get_pref} //Выделяем драгоценному префиксу целую переменную ;>
{
gt -= gettin' leader prefix -;
#act {$leader -- ' %1 %2}
{
#var leadpref {%1}; // %1 заключается в скобки на случай, если в
gt -
leader prefix set -; // префиксе присутствует наш разделитель.
#unact {$leader -- ' %1 %2}
};
gt Hey $leader grouptell anything pls :)
}

#alias {act_p} //Устанавливаем триггера для prefix mode
{
#act {$leader -- ' $leadpref all sneak'} {sneak};

#act {$leader -- ' $leadpref all up'} {ws};

JmcImg01.gif#act {$leader -- ' $leadpref catch'} {slee};

JmcImg01.gif#act {$leader -- ' $leadpref target %1 %2} {target %1} {4}

JmcImg01.gif#act {$leader -- ' $leadpref target %1'} {target %1}}

#alias {act_np} //Устанавливаем триггера для non-prefix mode
{
#act {$leader -- ' all sneak'} {sneak};

#act {$leader -- ' all up'} {ws};

JmcImg01.gif#act {$leader -- ' catch'} {slee};

JmcImg01.gif#act {$leader -- ' target %1 %2} {target %1} {4}

JmcImg01.gif#act {$leader -- ' target %1'} {target %1}}

#alias {unact_np} //Убираем триггера для non-prefix mode
{
#unact {$leader -- ' all sneak'};

#unact {$leader -- ' all up'};

JmcImg01.gif#unact {$leader -- ' catch'};

JmcImg01.gif#unact {$leader -- ' target %1'}

JmcImg01.gif#unact {$leader -- ' target %1 %2}}

#alias {unact_p} //Убираем триггера для prefix mode
{
#unact {$leader -- ' $leadpref all sneak'};

#unact {$leader -- ' $leadpref all up'};

JmcImg01.gif#unact {$leader -- ' $leadpref catch'};

JmcImg01.gif#unact {$leader -- ' $leadpref target %1'}

JmcImg01.gif#unact {$leader -- ' $leadpref target %1 %2}}

Не стану спорить, если вы скажете, что это - много канители из-за мелочи.
Но принцип дороже ;>>> Я скорее напишу еще 20 триггеров, чем стану моментально подрываться
на фразу плана 'on 2 ticks all up'. И потом, объем триггера так велик лишь потому,
что JMC не умеет присваивать переменным значение 'пустая строка'. Поэтому приходится
переиначивать все триггера для того или иного mode. Словом, моется тот, кому лень
чесаться, господа!

Следующие алиасы предназначены для лидера.

#alias {go} {gt -
going =-} //Это, конечно, не обязательно только лидерский алиас,
часто и стабберский ;>
#alias {greg} {gt regen;regen}
#alias {gs} {gt all sneak;sneak}
#alias {gtarget %1} {gt target %1;#var target %1}
#alias {gup} {gt all up;ws}
#alias {catch} {gt catch;slee}

Еще кое-какие примочки.

#alias {tank} {#var tank %0}
#alias {at} {ass $tank}
#action {You are rescued by $tank} {at}

#alias {noleader} {#unvar leader;gt no more leader, no more orders ;P}
#alias {notank} {#unvar tank}
#alias {notarget} {#var target { }}
#alias {resetvars} {notarget;notank;noleader}

#action {The walls in this room start to tremble!} {wak}
#action {As the room closes up around you, you are forced out!} {wak;st}

Пример auto-spellup. Здесь написано для detect invis, но можно использовать для чего угодно.
Серверный алиас di = cast 'detect inv'
#action {The detect invisible wears off.}
{
wak;st;
#act {You lost your concentration!} {di};
#act {Your eyes tingle}
{
#unact {You lost your concentration!};
#if {$regen=1} slee
};
di
} //Таким образом, кастим до победы, и если мы отдыхали, отдыхаем дальше.

#alias {resc %1}
{
#act {You fail} {resc %1};
#act {Banzai!} {#unact You fail};
rescue %1
}
А это соответственно попытки спасти до победы. Не рекомендуется при плохом коннекте

#action {tells you 'No magic here - kid!'} {ex} //Сразу посмотреть, куда же выползти для каста
#action {Sorry, this is a safe zone} {ex}

Информация взята из connect.mud.ru Если вы имеете контакты с авторами - свяжитесь с нами пожалуйста

 

Русский МАД-коннектор
The Russian MUD Connector
www.mudconnector.su

This site is powered by the TWiki collaboration platform Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.