Не скажу, что это оптимум, но работает вполне нормально...
Код:
#Клоны
P::trig {
if(!$clone_count) {
P::enable("CLONES");
$clone_string = CL::unparse_colors($;);
$clone_count = 1;
} else {
$clone_count++;
}
} '^\*?Двойник|Огненный хранитель|Хранитель|Костяной дракон|Костяной дух', "800ng:GAG";
P::trig {
if(CL::unparse_colors($;) ne $clone_string) {
P::disable("CLONES");
if ($clone_count > 1) {
P::echo("$clone_string [$clone_count]");
} else {
P::echo($clone_string);
}
$clone_count = 0;
}
} '.*', "2000nf-:CLONES";
P::trig {} '^[\.\s]\.\.', "5000g-:CLONES";
#Аффекты
P::trig {
$mob_string = CL::unparse_colors($;);
P::disable("GAG_EMPTY");
if($mob_string eq '')
{
P::enable("GAG_EMPTY");
}
if(get_color($;, 0) eq 'J')
{
P::enable("AFFECTS");
$affs = "";
P::enable("GAGNEXT");
}
} '.*', "80fn";
P::trig {
P::disable("GAGNEXT");
} '.*', "5g-:GAGNEXT";
P::trig {
P::echo("$mob_string $affs");
P::disable("AFFECTS");
} '.*', "2000nf-:AFFECTS";
P::trig {$affs .= "\3P[санк]";} '^\.\.\.светится ярким сиянием', "5000fg-:AFFECTS";
P::trig {$affs .= "\3O[призма]";} '^\.\.\.переливается всеми цветами', "5000fg-:AFFECTS";
P::trig {$affs .= "\3J[fire shield]";} '^\.\.\.окружен.*огненным', "5000f-:AFFECTS";
P::trig {$affs .= "\3O[ice shield]";} '^\.\.\.окружен.*ледяным', "5000f-:AFFECTS";
P::trig {$affs .= "\3P[air shield]";} '^\.\.\.окружен.*воздушным', "5000f-:AFFECTS";
P::trig {$affs .= "\3L[ЗБ]";} '^\.\.\.окутан', "5000f-:AFFECTS";
P::trig {$affs .= "\3H[air]";} '\.\..*воздушная', "5000f-:AFFECTS";
P::trig {$affs .= "\3B[fire]";} '\.\..*огненная', "5000f-:AFFECTS";
P::trig {$affs .= "\3E[ice]";} '\.\..*ледяная', "5000f-:AFFECTS";
P::trig {$affs .= "\3I[glass]";} '\.\..*серебристая', "5000f-:AFFECTS";
P::trig {$affs .= "\3I[СЗ]";} '^\.\..*черная', "5000f-:AFFECTS";
P::trig {$affs .= "\3L[\3OХОЛД\3L]";} '\.\.\.парализован', "5000f-:AFFECTS";
P::trig {$affs .= "\3L[\3OМОЛЧА\3L]";} '\.\.\.нем', "5000f-:AFFECTS";
P::trig {$affs .= "\3L[\3OСЛЕПЬ\3L]";} '\.\.\.слеп', "5000f-:AFFECTS";
P::trig {$affs .= "\3L[\3OГЛУХ\3L]";} '\.\.\.глух', "5000f-:AFFECTS";
P::trig {} '^\.\.\.', "4000g-:AFFECTS";
P::trig {} '^ \.\.\.', "4000g-:AFFECTS";
P::trig {} '^ \.\.', "4000g-:AFFECTS";
P::trig {} '^$', "10000-g:GAG_EMPTY";
Интересно, в меня камни полетят или нет... Думаю, что полетят