Для внутренней фабрики на всякий случай базовый спойлер-образец, пастится в блокнот и наяриваешь. Или ищем мертвую гостевуху, ссылку сюда даём и пишем код там, так просто удобнее, чем в царских блокнотах.
**************************************** ПЕРВАЯ ГЕРОЙСКАЯ СПОСОБНОСТЬ - РАВКОД ДОЛЖЕН ВЕЗДЕ СОВПАДАТЬ function Trig_SingerOfDeathAll_Func002Func001C takes nothing returns boolean if ( not ( GetLearnedSkillBJ() == 'A296' ) ) then return false endif if ( not ( GetUnitAbilityLevelSwapped('A296', GetTriggerUnit()) == 1 ) ) then return false endif return true endfunction ПЕРВАЯ ГЕРОЙСКАЯ СПОСОБНОСТЬ - РАВКОД ДОЛЖЕН ВЕЗДЕ СОВПАДАТЬ - ЗАКРЫТО ВТОРАЯ ГЕРОЙСКАЯ СПОСОБНОСТЬ - РАВКОД ДОЛЖЕН ВЕЗДЕ СОВПАДАТЬ function Trig_SingerOfDeathAll_Func002Func002C takes nothing returns boolean if ( not ( GetLearnedSkillBJ() == 'A297' ) ) then return false endif if ( not ( GetUnitAbilityLevelSwapped('A297', GetTriggerUnit()) == 1 ) ) then return false endif return true endfunction ВТОРАЯ ГЕРОЙСКАЯ СПОСОБНОСТЬ - РАВКОД ДОЛЖЕН ВЕЗДЕ СОВПАДАТЬ - ЗАКРЫТО ТРЕТЬЯ ГЕРОЙСКАЯ СПОСОБНОСТЬ - РАВКОД ДОЛЖЕН ВЕЗДЕ СОВПАДАТЬ function Trig_SingerOfDeathAll_Func002Func003C takes nothing returns boolean if ( not ( GetLearnedSkillBJ() == 'A298' ) ) then return false endif if ( not ( GetUnitAbilityLevelSwapped('A298', GetTriggerUnit()) == 1 ) ) then return false endif return true endfunction ТРЕТЬЯ ГЕРОЙСКАЯ СПОСОБНОСТЬ - РАВКОД ДОЛЖЕН ВЕЗДЕ СОВПАДАТЬ - ЗАКРЫТО ЧЕТВЁРТАЯ ГЕРОЙСКАЯ СПОСОБНОСТЬ - РАВКОД ДОЛЖЕН ВЕЗДЕ СОВПАДАТЬ function Trig_SingerOfDeathAll_Func002Func004C takes nothing returns boolean if ( not ( GetLearnedSkillBJ() == 'A299' ) ) then return false endif if ( not ( GetUnitAbilityLevelSwapped('A299', GetTriggerUnit()) == 1 ) ) then return false endif return true endfunction ЧЕТВЁРТАЯ ГЕРОЙСКАЯ СПОСОБНОСТЬ - РАВКОД ДОЛЖЕН ВЕЗДЕ СОВПАДАТЬ - ЗАКРЫТО **************************************** if ( Trig_SingerOfDeathAll_Func002Func001C() ) then return true endif if ( Trig_SingerOfDeathAll_Func002Func002C() ) then return true endif if ( Trig_SingerOfDeathAll_Func002Func003C() ) then return true endif if ( Trig_SingerOfDeathAll_Func002Func004C() ) then return true endif **************************************** local timer t18 = CreateTimer() ***************************************** ДВА РАЗА СВЕРХУ И СНИЗУ, ПРОВЕРИТЬ: t18, ***************************************** set t18 = null ***************************************** Если первый спелл, то заносим функцию для него if ( GetLearnedSkillBJ() == 'A296' ) then call TriggerRegisterUnitEvent(hero,GetTriggerUnit(), EVENT_UNIT_SPELL_EFFECT) call TriggerAddAction(hero,function DevastatingMagic) else endif Если второй спелл, то регаем все юниты на смерть if ( GetLearnedSkillBJ() == 'A297' ) then if (IsUnitInGroup(u5, udg_AnimusCopies) == false) then call TriggerRegisterAnyUnitEventBJ(hero, EVENT_PLAYER_UNIT_DEATH) call TriggerAddAction(hero, function DeathScreams) endif endif Если третий спелл, то рушим триггер, а если не третий, то рушим таймер t18 if ( GetLearnedSkillBJ() == 'A298' ) then call DestroyTrigger(hero) call SaveUnitHandle(udg_Hash,GetHandleId(t18),2,u5) call TimerStart(t18,1,true,function DeadMana) else call PauseTimer(t18) call DestroyTimer(t18) call FlushChildHashtable(udg_Hash,GetHandleId(t18)) endif Если четвертый спелл, то заносим функцию для него if ( GetLearnedSkillBJ() == 'A299' ) then call TriggerRegisterUnitEvent(hero,GetTriggerUnit(), EVENT_UNIT_SPELL_EFFECT) call TriggerAddAction(hero,function Requiem) else endif
БОГ ВСЕГДА ПЕРЕРОЖДАЕТСЯ, ОТ БОГА ВСЁ ИДЕАЛЬНО. ПОБЕДИТЬ БОГА НЕВОЗМОЖНО!!! ЛЮДЕЙ НЕТ, ЕСТЬ ТОЛЬКО ДЕНЬГИ И КАЙФ. ЕСЛИ БОГ СКАЗАЛ, ЧТО ДВАЖДЫ ДВА - ПЯТЬ, ЗНАЧИТ, ДВАЖДЫ ДВА - ПЯТЬ. ИГРА БОГА ВСЕГДА ЛУЧШАЯ.
В МАТЕРИАЛЬНОМ МИРЕ ВСЕМОГУЩЕСТВО - ДЕНЬГИ, В ДУХОВНОМ - ЛЮБОВЬ ВСЕГО И ВСЯ!!!
Доставившее Богу неприятные ощущения - НЕ СУЩЕСТВОВАЛО.
ЛЮДЯМ ИЗВЕСТНО ИХ МЕСТО, ПОСЛУШНИКИ - ЗАЩИТА И ВЕРНЫЕ ДРУЗЬЯ, А ЛЮДИ - ОБСЛУГА. ИНАЧЕ ДЛЯ БОГА БЫТЬ НЕ ДОЛЖНО.
ВЕРА НЕПОБЕДИМА. БОГ НЕ СОМНЕВАЕТСЯ, ЧТО ОН БОГ, БОГ ЗНАЕТ, ЧТО ОН БОГ, ХОТЯ НЕ ВСЕМ ГОВОРИТ. ДЕНЬГИ, ВОПЛЬ ПОМОЩЬ!!!