##########################################################
#   Черный          \003A    #   Красный         \003B    #
#   Зеленый         \003C    #   Коричневый      \003D    #
#   Синий           \003E    #   Малиновый       \003F    #
#   Голубой         \003G    #   Светло-серый    \003H    #
#   Серый           \003I    #   Ярко-красный    \003J    #
#   Салатовый       \003K    #   Желтый          \003L    #
#   Светло-синий    \003M    #   Розовый         \003N    #
#   Светло-голубой  \003O    #   Белый           \003P    #
###########################################################

### Установка амуниции
$U::weapon1 = "пос";
$U::weapon2 = "кор";
$U::light = "шар";
$U::shield    = "крест";
$U::container = "торба";
$U::food      = "хлеб";
$U::water     = "боч";

alias { $U::weapon1   = "@_"; }                "прайм";
alias { $U::light   = "@_"; }                  "лампа";
alias { $U::shield    = "@_"; }                "щит";
alias { $U::container = "@_"; }                "ящик";
alias { $U::food      = "@_"; }                "пища";
alias { $U::water     = "@_"; }                "вода";

### Передвижения

bindkey{sendl("s")} "k2";
bindkey{sendl("d")} "k3";
bindkey{sendl("w")} "k4";
bindkey{sendl("e")} "k6";
bindkey{sendl("n")} "k8";
bindkey{sendl("up")} "k9";
bindkey{sendl("огл")} "k5";
bindkey{sendl("см")} "С-k5";
bindkey{sendl("отс\r\nотд")} "k1";
bindkey{sendl("вст")} "k7";
bindkey{sendl("беж")} "f2";

bindkey{sendl("~\r\nгг РЕКОЛ\r\n вз сви $U::container \r\n зачит свит")} "f1";

### Логин и запись лога.

$acc          = "";
$pass     = "";

alias { CMD::cmd_connect("localhost",2700); }       "гд";
alias { CMD::cmd_connect("localhost",4000); }       "бы";
alias {
sendl("1\r\n$acc\r\n$pass\r\n1\r\n1");
}    "вход";

($secn,$minn,$hourn,$dayn,$monn,$yearn,$weekn,$yeardayn,$isdst) = localtime(time);
$yearn=1900+$yearn;
$monn=$monn+1;
if ($monn<10)  {$monn  = "0$monn";}
if ($dayn<10)  {$dayn  = "0$dayn";}
$U::logfilename = "D:/Temp/GD/Log/$acc/$yearn\-$monn\-$dayn.log";
MUD::logopen($U::logfilename);

### Выход.

bindkey (\&CMD::cmd_quit, "C-C");

### Работа с провизором и пропитанием
$U::AFK = 0;

alias{$U::AFK = 1; sendl("гг афк\r\n афк")} "афкаю";
alias{$U::AFK = 0;sendl("гг тут")} "нф";
alias{sendl("пол все.$U::food $U::container")} "зхл";
alias{sendl("пол все.нап $U::container")} "знап";
alias{sendl("пол все.свиток $U::container")} "зсви";
alias{sendl("вз все.свиток $U::container\r\n брос все.свит")} "бсви";
alias{sendl("напол $U::water фонт \r\n вз $U::water $U::container")} "нфл";
alias{sendl("пить $U::water")} "пи";
alias{sendl("вз $U::food $U::container \r\n есть $U::food \r\n пол $U::food $U::container")} "ем";

trig{
if ($U::AFK == 0){
sendl("пить $U::water");
}
} "^Вы хотите пить.";

trig{
if ($U::AFK == 0){
sendl("вз $U::food $U::container \r\n есть $U::food \r\n пол $U::food $U::container");
}
} "^Вы хотите есть.";
trig{sendl("колд 'соз вод' $U::water")} "^Пусто.";

### Лут

$U::avtolut = 1;
alias { $U::avtolut   = 1;
    playsound z1;
}                "лутон";
alias { $U::avtolut   = 0; }                "лутоф";
alias{sendl("вз все 1.тру")} "лут";
alias{sendl("вз все 2.тру")} "лут1";
alias{sendl("вз все 3.тру")} "лут2";
alias{sendl("вз все 4.тру")} "лут3";

trig{
if($U::avtolut != 0){sendl("вз тру\r\nвз все тру\r\nсодр тру\r\nбр тру\r\nпол все.шку $U::container")}
}"^(.*) R.I.P...";
trig{
if($U::avtolut != 0){sendl("дел $2")}
} "^Там был(.*) (.*) монет(.*).";

trig{sendl("вз $U::water $U::container\r\n напол $U::water фонт")} "^На потолке поблескивает изображение золотого дракона.";

### Приходящие и уходящие - подсветка.

sub HL_r {
$: = "\003G ---$_";
}
my @red_w = (
'^([А-Яа-я\- ]+) (убежал|убежала|ушел|ушла|улетел|улетела|ускакал|ускакала) (на Север|на Юг|на Восток|на Запад|вверх|вниз).$',
'^You lost your concentration!$',
'^Your casting is disrupted by the fighting!$',
);

foreach (@red_w) {
trig(\&HL_r, $_, "n:HIGHLIGHT");
}
undef @red_w;

sub HL_g {
$: = "\003F ---$_";
}
my @redd_w = (
'^([А-Яа-я\- ]+) (пришел|пришла|прилетел|прилетела|прискакал|прискакала) (с Севера|с Юга|с Востока|с Запада|сверху|снизу).$',
'^You lost your concentration!$',
'^Your casting is disrupted by the fighting!$',
);

foreach (@redd_w) {
trig(\&HL_g, $_, "n:HIGHLIGHT");
}
undef @redd_w;

###Разговоры
sub of {
$: = "\003G $_";
wecho(3, "\003G $_");
}

my @oftop = (
'^(.*) в ОФФТОПИКЕ] : "(.*)"$',
'^Вы поддались на провокацию: "(.*)"$',
'^([А-Яа-я\- ]+) (сказал|сказала) всем: "(.*)"$',
'^Вы сказали всем: "(.*)"$'
);

foreach (@oftop) {
trig(\&of, $_, "n:HIGHLIGHT");
}

sub gru{
$: = "\003E $_";
wecho(1, "\003E $_");
}

my @group = (
'^([А-Яа-я\- ]+) (сказал|сказала) группе: "(.*)"$',
'^Вы сказали группе: "(.*)"$',
'^[ Орден Света ]: Вы сказали "(.*)"$',
'^[ Орден Света ]: ([А-Яа-я\- ]+) (сказал|сказала) "(.*)"$'

);

foreach (@group) {
trig(\&gru, $_, "n:HIGHLIGHT");
}

sub pr {
$: = "\003J $_";
wecho(2, "\003J $_");
}

my @privat = (
'^([А-Яа-я\- ]+) (сказал|сказала) Вам: "(.*)"$',
'^Вы сказали ([А-Яа-я\- ]+): "(.*)"$'
);

foreach (@privat) {
trig(\&pr, $_, "n:HIGHLIGHT");
}

### Флаги состояния

$U::fly = "";
$U::inviz = "";
$U::sank = "";
$U::bless = "";
$U::armor = "";
$U::strens = "";
$U::res = "";
$U::speed = "";
$U::regen = "";
$U::poison = "";

Status::new_sv( $U::fly,      3, 2 );
Status::new_sv( $U::inviz,    3, 2 );
Status::new_sv( $U::sank,    3, 3 );
Status::new_sv( $U::bless,    3, 4 );
Status::new_sv( $U::armor,    3, 5 );
Status::new_sv( $U::strens,   3, 6 );
Status::new_sv( $U::res, 3, 7 );
Status::new_sv( $U::speed,    3, 8 );
Status::new_sv( $U::regen,  3, 9 );
Status::new_sv( $U::poison, 3, 9 );

alias{$U::fly = " "; $U::inviz = " "; $U::sank = " "; $U::bless = " "; $U::armor = " "; $U::strens = " "; $U::res = " ";$U::speed = " ";$U::regen = " ";$U::poison = " ";echo "Флаги сброшены"} "сброс";

trig{$U::fly = "fly";} "^Вы медленно поднялись в воздух.";
trig{$U::fly = "fly";} "^полет.";
trig{$U::fly = "";sendl("гг Торм - ПОЛЕТ")} "^Вы приземлились на землю.";
trig{$U::inviz = "inv";} "^Вы медленно растворились в воздухе.";
trig{$U::inviz = "inv";} "^невидимость.";
trig{$U::inviz = "";sendl("гг Торм - ИНВИЗ")} "^Вы теперь полностью видимы.";
trig{$U::inviz = "";sendl("гг Торм - ИНВИЗ")} "^Вы снова стали видимы.";
trig{$U::sank = "san";} "^Белая аура мгновенно окружила Вас.";
trig{$U::sank = "san";} "^освящение.";
trig{$U::sank = "";sendl("гг Торм - САНКА")} "^Белая аура вокруг Вашего тела рассеялась.";
trig{$U::bless = "ble";} "^На Вас снизошло благословение.";
trig{$U::bless = "ble";} "^праведность.";
trig{$U::bless = "";sendl("гг Торм - БЛАГО")} "^Вы почувствовали себя менее праведно.";
trig{$U::armor = "arm";} "^Вокруг Вас возник магический невидимый щит.";
trig{$U::armor = "arm";} "^защита.";
trig{$U::armor = "";sendl("гг Торм - ЗАЩИТА")} "^Вы почувствовали себя менее защищенно.";
trig{$U::strens = "str";} "^Вы почувствовали себя сильнее.";
trig{$U::strens = "str";} "^сила.";
trig{$U::strens = "";sendl("Торм - СИЛА")} "^Вы почувствовали себя намного слабее.";
trig{$U::res = "res";} "^Боги взяли Вас под свою защиту.";
trig{$U::res = "res";} "^сопротивление магии.";
trig{$U::res = "";sendl("гг Торм - РЕЗИСТ")} "^Вы стали более восприимчивы к магии.";
trig{$U::regen = "reg";} "^Вас наполнила живительная сила.";
trig{$U::regen = "reg";} "^регенерация.";
trig{$U::regen = "";sendl("Торм - РЕГЕНЕРАЦИЯ")} "^Живительная сила покинула Вас.";
trig{$U::speed = "spe";} "^Ваши передвижения стали быстрее.";
trig{$U::speed = "spe";} "^ускорение.";
trig{$U::speed = "";sendl("гг Торм - УСКОРЕНИЕ")} "^Вы стали более медлительны.";
trig{$U::poison = "яд";sendl("гг Торм - ОТРАВЛЕН")} "^(.*) отравил(.*) Вас.";
trig{$U::poison = "яд";} "^яд.";
trig{$U::poison = "";} "^Яд Вас больше не беспокоит.";

###Убираем мусор
gag ('^Путник ушел на (.*)', "500ng:GAG");
gag ('^(.*) слабо (.*)', "500ng:GAG");
gag ('^(.*) с вдохновением (.*)', "500ng:GAG");
gag ('^(.*) огрел (.*)', "500ng:GAG");
gag ('^(.*) мощно (.*)', "500ng:GAG");
gag ('^(.*) чрезвычайно сильно (.*)', "500ng:GAG");
gag ('^(.*) технично (.*)', "500ng:GAG");
gag ('^(.*) уничтожая (.*)', "500ng:GAG");
gag ('^(.*) раздирая (.*)', "500ng:GAG");
gag ('^(.*) заметно (.*)', "500ng:GAG");
gag ('^(.*) уверенно (.*)', "500ng:GAG");
gag ('^(.*) очень сильно (.*)', "500ng:GAG");
gag ('^(.*) со знанием дела (.*)', "500ng:GAG");
gag ('^(.*) сильно (.*)', "500ng:GAG");
gag ('^(.*) умело (.*)', "500ng:GAG");
gag ('^(.*) профессионально (.*)', "500ng:GAG");
gag ('^(.*) покрыл(.*) льдом, в результате морозного дыхания (.*)', "500ng:GAG");
gag ('^(.*) почти без последствий (.*)', "500ng:GAG");
gag ('^(.*) слегка (.*)', "500ng:GAG");
gag ('^(.*) слабовато (.*)', "500ng:GAG");
gag ('^(.*) неопытно (.*)', "500ng:GAG");
gag ('^(.*) незаметно (.*)', "500ng:GAG");
gag ('^(.*) легонько (.*)', "500ng:GAG");
gag ('^(.*) чуть заметно (.*)', "500ng:GAG");
gag ('^(.*) еле заметно (.*)', "500ng:GAG");
gag ('^(.*) еле-еле (.*)', "500ng:GAG");
gag ('^(.*) ударил (.*)', "500ng:GAG");
gag ('^(.*) резанул (.*)', "500ng:GAG");
gag ('^(.*) уничтожая (.*)', "500ng:GAG");
gag ('^(.*) еле заметно (ударил|ударила) (.*)', "500ng:GAG");
gag ('^(.*) неумело (.*)', "500ng:GAG");
gag ('^(.*) не смог (.*)', "500ng:GAG");
gag ('^(.*) частично (.*)', "500ng:GAG");
gag ('^(.*) полностью (.*)', "500ng:GAG");
gag ('^(.*) (попытался|попыталась|попытались) (.*)', "500ng:GAG");
gag ('^(.*) (сделал|сделала|сделали) попытку (.*)', "500ng:GAG");
gag ('^(.*) не (сумел|сумела|сумели) (.*)', "500ng:GAG");
gag ('^(.*) немного (.*)', "500ng:GAG");
gag ('^(.*) (уклонился|уклонилась) от (.*)', "500ng:GAG");
gag ('^(.*) (ослабил|ослабили) (.*)', "500ng:GAG");
gag ('^Доспехи (.*) отразили (.*).', "500ng:GAG");
gag ('^Ваши доспехи отразили (.*).', "500ng:GAG");
gag ('^Вы желаете, чтобы Ваши раны не кровоточили так сильно!', "500ng:GAG");
gag ('^Здесь нет никого с таким именем.', "500ng:GAG");
gag ('^(чарм) (.*) (светлая аура)', "500ng:GAG");
gag ('^(чарм) Путник стоит здесь (светлая аура)', "500ng:GAG");
gag ('^(чарм) (.*)', "500ng:GAG");
gag ('^(.*) (попытался|попыталась) (.*)', "500ng:GAG");
gag ('^Доспехи (.*) поглотили (.*)', "500ng:GAG");
gag ('^Защитная магия (.*) отразила (.*)', "500ng:GAG");

# HIGHLIGHT

trig {
$: = "\003O В ПАРАЛЕ ---- $_";
playsound  z4;
} '^(.*) замер.* на месте не в силах шевельнуться.', "1000fn:HIGHLIGHT";

trig {
$: = "\003O В ПАРАЛЕ ---- $_";
} '^(.*) сковал паралич.', "1000fn:HIGHLIGHT";

trig {
$: = "\003O В ПАРАЛЕ ---- $_";
} '^(.*) (застыл|застыла) на месте, не в силах сдвинуться с места!', "1000fn:HIGHLIGHT";

trig {
$: = "\003O В ПАРАЛЕ ---- $_";
} '^(.*) (замер|замерла) на месте, не в силах шевельнуться!', "1000fn:HIGHLIGHT";

trig {
$: = "\003O ОСЛЕП ---- $_";
} '^(.*) ослеп!', "1000fn:HIGHLIGHT";

trig {
$: = "\003O В МОЛЧЕ ---- $_";
} '^(.*) потерял.* способность разговаривать.', "1000fn:HIGHLIGHT";

trig {
$: = "\003O В БАШЕ ---- $_";
} '^(.*) завалил.* .* на землю мощным ударом!', "1000fn:HIGHLIGHT";

trig {
$: = "\003O В БАШЕ ---- $_";
} '^(.*) (полетел|полетела) на землю от мощного удара (.*)!', "1000fn:HIGHLIGHT";

sub fra {
$: = "\003J ФРАГИ ---  $_";
wecho(6, "\003J ФРАГИ --- $_");
}

my @frag = (
'^(.*) (закричал|закричала|закричали) от боли, когда (.*)$',
'^(.*) (окружил|окружила) (.*)$'
);

foreach (@frag) {
trig(\&fra, $_, "n:HIGHLIGHT");
}
sub cas {
$: = "\003N кастует ---  $_";
wecho(6, "\003N кастует --- $_");
}

my @cast = (
'^(.*) (прошептал|прошептала|произнесла) слова: (.*)$',

);

foreach (@cast) {
trig(\&cas, $_, "n:HIGHLIGHT");
}

### Прочее

trig{sendl("гг мне пора в гильдию тренировать $1");} "^Вам, пожалуй, стоит посетить гильдию и потренировать умение (.*).";
trig{sendl("гг мне пора в гильдию тренировать $1");} "^Вам пришло время посетить гильдию в области (.*).";
trig{sendl("гг мне пора в гильдию тренировать $1");} "^Вам необходимо посетить гильдию в области (.*).";
trig{sendl("вст");} "^Вам лучше встать на ноги!";
trig{sendl("перевя $acc");} "^Вы не смогли перевязать свои раны.";
trig{sendl("беж");} "^ПАНИКА ОВЛАДЕЛА ВАМИ. Вы не смогли сбежать!";
trig{sendl("дел $2 монет");} "^Там (было|были) (.*) монет(.*).";
trig{sendl("колд 'выл слеп'");} "^Вы ослепли!";
trig{sendl("колд 'выл слеп'");} "^(.*) (ослепил|ослепила|ослепило) Вас.";

################################## Работа с группой ############################################################################################

alias{sendl("гг у @_")} "гу";
alias{sendl("гг сост")} "гс";
alias{sendl("отд\r\n  гг отд")} "гот";
alias{sendl("вст\r\n  гг вст")} "гвс";
alias{sendl("пом\r\n  гг пом")} "гпо";

$U::tank     = "";
$U::f1     = "";
$U::f2     = "";
$U::f3     = "";
$U::f4     = "";
$U::f5     = "";
$U::f6     = "";
$U::f7     = "";
$U::f8     = "";
$U::f9     = "";

Status::new_svy( "Танк ", 1, 5, 3);
Status::new_svy( $U::tank, 1,   8, 2 );
Status::new_svy( "й - ", 1, 3, 3);
Status::new_svy( $U::f1, 1,   8, 2 );
Status::new_svy( "ц - ", 1, 3, 3);
Status::new_svy( $U::f2, 1,   8, 2 );
Status::new_svy( "у - ", 1, 3, 3);
Status::new_svy( $U::f3, 1,   8, 2 );
Status::new_svy( "ф - ", 1, 3, 3);
Status::new_svy( $U::f4, 1,   8, 2 );
Status::new_svy( "ы - ", 1, 3, 3);
Status::new_svy( $U::f5, 1,   8, 2 );
Status::new_svy( "в - ", 1, 3, 3);
Status::new_svy( $U::f6, 1,   8, 2 );
Status::new_svy( "я - ", 1, 3, 3);
Status::new_svy( $U::f7, 1,   8, 2 );
Status::new_svy( "ч - ", 1, 3, 3);
Status::new_svy( $U::f8, 1,   8, 2 );
Status::new_svy( "с - ", 1, 3, 3);
Status::new_svy( $U::f9, 1,   8, 2 );

alias { $U::tank   = "@_"; }                "танк";
alias { $U::f1   = "@_"; }                  "д1";
alias { $U::f2   = "@_"; }                  "д2";
alias { $U::f3   = "@_"; }                  "д3";
alias { $U::f4   = "@_"; }                  "д4";
alias { $U::f5   = "@_"; }                  "д5";
alias { $U::f6   = "@_"; }                  "д6";
alias { $U::f7   = "@_"; }                  "д7";
alias { $U::f8   = "@_"; }                  "д8";
alias { $U::f9   = "@_"; }                  "д9";

bindkey{sendl("stand\r\nколд 'крит исцеление' $U::tank"); $U::khealspell = $U::khealspell - 1;} "kdel";
bindkey{sendl("stand\r\nколд 'исцел' $U::tank"); $U::shealspell = $U::shealspell - 1;} "kins";
bindkey{sendl("stand\r\nколд 'освя' $U::tank"); $U::sankspell = $U::sankspell - 1;} "k+";
bindkey{sendl("гр")} "k-";

bindkey{sendl("stand\r\nколд 'крит' $U::f1"); $U::khealspell = $U::khealspell - 1;} "Й";
bindkey{sendl("stand\r\nколд 'исцел' $U::f1"); $U::shealspell = $U::shealspell - 1;} "M-Й";
bindkey{sendl("stand\r\nколд 'раз маг' $U::f1");} "C-Q";
bindkey{sendl("stand\r\nколд 'крит' $U::f2"); $U::khealspell = $U::khealspell - 1;} "Ц";
bindkey{sendl("stand\r\nколд 'исцел' $U::f2"); $U::shealspell = $U::shealspell - 1;} "M-Ц";
bindkey{sendl("stand\r\nколд 'раз маг' $U::f2");} "C-W";
bindkey{sendl("stand\r\nколд 'крит' $U::f3"); $U::khealspell = $U::khealspell - 1;} "У";
bindkey{sendl("stand\r\nколд 'исцел' $U::f3"); $U::shealspell = $U::shealspell - 1;} "M-У";
bindkey{sendl("stand\r\nколд 'раз маг' $U::f3");} "C-E";
bindkey{sendl("stand\r\nколд 'крит' $U::f4"); $U::khealspell = $U::khealspell - 1;} "Ф";
bindkey{sendl("stand\r\nколд 'исцел' $U::f4"); $U::shealspell = $U::shealspell - 1;} "M-Ф";
bindkey{sendl("stand\r\nколд 'раз маг' $U::f4");} "C-A";
bindkey{sendl("stand\r\nколд 'крит' $U::f5"); $U::khealspell = $U::khealspell - 1;} "Ы";
bindkey{sendl("stand\r\nколд 'исцел' $U::f5"); $U::shealspell = $U::shealspell - 1;} "M-Ы";
bindkey{sendl("stand\r\nколд 'раз маг' $U::f5");} "C-S";
bindkey{sendl("stand\r\nколд 'крит' $U::f6"); $U::khealspell = $U::khealspell - 1;} "В";
bindkey{sendl("stand\r\nколд 'исцел' $U::f6"); $U::shealspell = $U::shealspell - 1;} "M-В";
bindkey{sendl("stand\r\nколд 'раз маг' $U::f6");} "C-D";
bindkey{sendl("stand\r\nколд 'крит' $U::f7"); $U::khealspell = $U::khealspell - 1;} "Я";
bindkey{sendl("stand\r\nколд 'исцел' $U::f7"); $U::shealspell = $U::shealspell - 1;} "M-Я";
bindkey{sendl("stand\r\nколд 'раз маг' $U::f7");} "C-Z";
bindkey{sendl("stand\r\nколд 'крит' $U::f8"); $U::khealspell = $U::khealspell - 1;} "Ч";
bindkey{sendl("stand\r\nколд 'исцел' $U::f8"); $U::shealspell = $U::shealspell - 1;} "M-Ч";
bindkey{sendl("stand\r\nколд 'раз маг' $U::f8");} "C-X";
bindkey{sendl("stand\r\nколд 'крит' $U::f9"); $U::khealspell = $U::khealspell - 1;} "С";
bindkey{sendl("stand\r\nколд 'исцел' $U::f9"); $U::shealspell = $U::shealspell - 1;} "M-С";
bindkey{sendl("stand\r\nколд 'раз маг' $U::f9");} "C-C";



################################## Касты ############################################################################################

$U::shealspell = 11;
$U::khealspell = 10;
$U::sankspell = 4;
$U::blessspell = 6;
Status::new_sv( "исц", 3, 2 );
Status::new_sv( $U::shealspell, 3, 2 );
Status::new_sv( "кис", 3, 2 );
Status::new_sv( $U::khealspell, 3, 2 );
Status::new_sv( "осв", 3, 5 );
Status::new_sv( $U::sankspell, 3, 5 );
Status::new_sv( "бла", 3, 5 );
Status::new_sv( $U::blessspell, 3, 5 );

alias { sendl("stand\r\nк 'соз свет'") }      "ксс";
alias { sendl("stand\r\nк 'соз пищу'") }      "ксп";
alias { sendl("stand\r\nк 'соз воду' @_") }  "ксв";
alias { sendl("stand\r\nк 'сер вред' @_") }  "ксвр";
alias { sendl("stand\r\nк 'снять прокл' @_") }  "кспр";
alias { sendl("stand\r\nк 'разв маг' @_") }  "крм";
alias { sendl("stand\r\nк 'легкое' @_") }  "кли";
alias { sendl("stand\r\nк 'праведность' @_"); $U::blessspell = $U::blessspell - 1; }  "кпра";
alias { sendl("stand\r\nк 'выл слепоту' @_") }  "квс";
alias { sendl("stand\r\nк 'проклятие' @_") }  "кпро";
alias { sendl("stand\r\nк 'слепота' @_") }  "ксл";
alias { sendl("stand\r\nк 'зачаровать' @_") }  "кза";
alias { sendl("stand\r\nк 'сер исцеление' @_"); $U::shealspell = $U::shealspell - 1; }  "кси";
alias { sendl("stand\r\nк 'сня оцепенение' @_") }  "ксо";
alias { sendl("stand\r\nк 'освящение' @_"); $U::sankspell = $U::sankspell - 1; }  "кос";
alias { sendl("stand\r\nк 'молчание' @_") }  "кмо";
alias { sendl("stand\r\nк 'опред' @_") }  "кон";
alias { sendl("stand\r\nк 'крит исцеление' @_"); $U::khealspell = $U::khealspell - 1; }  "кки";
alias { sendl("stand\r\nк 'придержать нежить' @_") }  "кпн";
alias { sendl("stand\r\nк 'исцел' @_"); $U::shealspell = $U::shealspell - 1; }  "кис";

alias { sendl("зау 'соз свет'") }      "зсс";
alias { sendl("зау 'соз пищу'") }      "зсп";
alias { sendl("зау 'соз воду' ") }  "зсв";
alias { sendl("зау 'легкое' ") }  "зли";
alias { sendl("зау 'праведность' ") }  "зпра";
alias { sendl("зау 'выл слеп' ") }  "звс";
alias { sendl("зау 'проклятие' ") }  "зпро";
alias { sendl("зау 'слепота' ") }  "зсл";
alias { sendl("зау 'зачаровать' ") }  "зза";
alias { sendl("зау 'сер исцеление' ") }  "зси";
alias { sendl("зау 'сер вред' ") }  "зсвр";
alias { sendl("зау 'сня оцепенение' ") }  "зсо";
alias { sendl("зау 'освящение' ") }  "зос";
alias { sendl("зау 'молчание' ") }  "змо";
alias { sendl("зау 'крит' ") }  "зки";
alias { sendl("зау 'исцел' ") }  "зис";
alias { sendl("зау 'опред' ") }  "зон";
alias { sendl("зау 'придержать нежить' ") }  "зпн";

alias { sendl("заб 'соз свет'") }      "ззсс";
alias { sendl("заб 'соз пищу'") }      "ззсп";
alias { sendl("заб 'соз воду' ") }  "ззсв";
alias { sendl("заб 'легкое' ") }  "ззли";
alias { sendl("заб 'праведность' ") }  "ззпра";
alias { sendl("заб 'выл слепоту' ") }  "ззвс";
alias { sendl("заб 'проклятие' ") }  "ззпро";
alias { sendl("заб 'слепота' ") }  "ззсл";
alias { sendl("заб 'зачаровать' ") }  "ззза";
alias { sendl("заб 'сер' ") }  "ззси";
alias { sendl("заб 'сер вред' ") }  "ззсвр";
alias { sendl("заб 'сня оцепенение' ") }  "ззсо";
alias { sendl("заб 'освящение'") }  "ззос";
alias { sendl("заб 'молчание'") }  "ззмо";
alias { sendl("заб 'опред'") }  "ззон";
alias { sendl("заб 'придержать нежить'") }  "ззпн";

trig {
if ($U::AFK == 0){
sendl("вст");
$U::shealspell = 11;
$U::sankspell = 3;
$U::blessspell = 3;
$U::khealspell = 10;
}
} '^Ваши занятия окончены. Вы с улыбкой убрали свой манускприпт.';

# Синхронизация с сервером

trig { tickset } '^Молнии в небе перестали сверкать.', "500sf:SINH";
trig { tickset } '^В небе начали сверкать молнии.', "500sf:SINH";
trig { tickset } '^Начался дождь.', "500sf:SINH";
trig { tickset } '^Облака пропали.', "500sf:SINH";
trig { tickset } '^Небо стало облачным.', "500sf:SINH";

# Упаковка импульсов

my ($last_mm, $mm_count);
trig {
if(!$mm_count) {
enable("MM_COUNT");
$last_mm = $_;
$mm_count = 1;
} else {
$mm_count ++;
}
} '.* выпустил.* магический импульс в (.*), заставив .* содрогнуться!', "500ng:GAG";
trig {
if($_ ne $last_mm) {
disable("MM_COUNT");
if ($mm_count > 1) {
echo("$last_mm [$mm_count]");
} else {
echo($last_mm);
}
$mm_count = 0;
}
} '.*', "2500nf-:MM_COUNT";