!#UN:A13/156/49/50/51;Устанавливаем сборный артефакт и его части.
!#UN:A156/1/50000;Устанавливаем стоимость сборного артефакта.
!#UN:A156/2/9;Устанавливаем позицию для сборного артефакта.
!#UN:A156/3/16;Устанавливаем класс сборного артефакта.
!#UN:A156/4/13;Устанавливаем номер сборного артефакта.
!#UN:A156/5/-1;Сбрасываем принадлежность сборному артефакту.
!#UN:A156/8/0;Сбрасываем получение заклинаний от сборного артефакта.
!#UN:A156/9/0;Сбрасываем имя сборного артефакта на стандартное.
!#VRz181:S^В начале второго раунда накладывает Щит и Ускорение на все союзные войска и восстанавливает их каждый раунд. Эффект пропадает после 20 раунда.^;Подготавливаем переменную с описанием сборного артефакта.
!#UN:A156/10/181;Устанавливаем описание сборного артефакта.
!?BR&v997>=1/v997<=19;В начале каждого раунда между вторым и девятнадцатым (атакующий)... !!BA:H0/?y-1;Считываем номер атакующего героя. !!FU&y-1<=-2:E;Если у атакующего нет героя, выходим из триггера. !!HEy-1:A2/156/d/?y-2;Проверяем, сколько на героя надето артефактов №156. !!FU&y-2<=0:E;Если ни одного, выходим из триггера. !!DO10050/0/20/1:P27/53/?y-3;Запускаем цикл, проходящийся по всем стекам стороны и проверяющий, наложены ли на них два заклинания (номера - первый и второй параметры). !!FU&y-3=0:E;Если контрольная переменная равна 0 (заклинания на всех наложены), выходим из триггера. !!HEy-1:A2/0/d/?y-4;Проверяем, сколько на героя надето книг заклинаний. !!HEy-1&y-4=0:A4/0;Если ни одной, даём книгу заклинаний герою. !!BH0:M?y-5;Считываем возможность героя колдовать. !!HEy-1:I?y-6/1;Считываем количество маны у героя (без обновления экрана - иначе будет видна строка ресурсов). !!BH0:C27/0/3/0;Колдуем щит героем. !!BH0:C53/0/3/0;Колдуем ускорение героем. !!BH0:My-5;Восстанавливаем возможность героя колдовать. !!HEy-1:Iy-6/1;Восстанавливаем ману героя (без обновления). !!HEy-1&y-4=0:A3/0/1/1;Если у героя не было книг заклинаний, отнимаем ту, которую дали. !!DO10051/0/20/1:P27/53;Запускаем цикл, проходящийся по всем стекам стороны и устанавливающий длительность двух заклинаний (номера - первый и второй параметры).
!?BR&v997>=1/v997<=19;В начале каждого раунда между вторым и девятнадцатым (защищающийся)... !!BA:H1/?y-1;Считываем номер защищающегося героя. !!FU&y-1<=-2:E;Если у защищающегося нет героя, выходим из триггера. !!HEy-1:A2/156/d/?y-2;Проверяем, сколько на героя надето артефактов №156. !!FU&y-2<=0:E;Если ни одного, выходим из триггера. !!DO10050/21/41/1:P27/53/?y-3;Запускаем цикл, проходящийся по всем стекам стороны и проверяющий, наложены ли на них два заклинания (номера - первый и второй параметры). !!FU&y-3=0:E;Если контрольная переменная равна 0 (заклинания на всех наложены), выходим из триггера. !!HEy-1:A2/0/d/?y-4;Проверяем, сколько на героя надето книг заклинаний. !!HEy-1&y-4=0:A4/0;Если ни одной, даём книгу заклинаний герою. !!BH0:M?y-5;Считываем возможность героя колдовать. !!HEy-1:I?y-6/1;Считываем количество маны у героя (без обновления). !!BH1:C27/0/3/0;Колдуем щит героем. !!BH1:C53/0/3/0;Колдуем ускорение героем. !!BH0:My-5;Восстанавливаем возможность героя колдовать. !!HEy-1:Iy-6/1;Восстанавливаем ману героя (без обновления). !!HEy-1&y-4=0:A3/0/1/1;Если у героя не было книг заклинаний, отнимаем ту, которую дали. !!DO10051/21/41/1:P27/53;Запускаем цикл, проходящийся по всем стекам стороны и устанавливающий длительность заклинаний (номера - первый и второй параметры).
;Функции длительности двух заклинаний на стеках.
!?FU10050;Функция проверки длительности двух заклинаний на стеке. !!VRx3:S0;Сбрасываем контрольную переменную. !!BMx16:N?y1;Считываем количество существ в стеке. !!FU&y1<=0:E;Если в стеке нет существ, завершаем функцию. !!BMx16:Gx1/?y1/d;Считываем длительность первого заклинания на стеке. !!BMx16:Gx2/?y2/d;Считываем длительность второго заклинания на стеке. !!VRx3&y1<=0|y2<=0:S1;Если на стеке нет одного из двух заклинаний, устанавливаем контрольную переменную в 1. !!VRx16&y1<=0|y2<=0:S42;Если на стеке нет одного из двух заклинаний, выходим из цикла.
!?FU10051;Функция установки длительности двух заклинаний на стеке. !!BMx16:N?y1;Считываем количество существ в стеке. !!FU&y1<=0:E;Если в стеке нет существ, завершаем функцию. !!VRy1:S20-v997;Вычисляем длительность заклинаний. !!BMx16:Gx1/y1/d;Продлеваем первое заклинание. !!BMx16:Gx2/y1/d;Продлеваем второе заклинание.
Заклы накладываются на 20 раундов и восстанавливаются каждый из первых 19 раундов, такой длительностью, чтобы закончиться в 20-й раунд.
Единственная проблема - невозможно наложить заклы в 1-й раунд (вернее, возможно, но без анимации и с игнорированием иммунитетов и т. п.), поэтому они накладываются только со 2-ого раунда.
(This post was last modified: 04.11.2010 19:09 by Sav.)