Shiroyasha2910Я тут почти закончил делать карту, но столкнулся с проблемой сделать свой бонус для сета артефактов, а именно, я вообще не представляю как подобное делать. Задумка такая, если у героя будут артефакты: шлем некроманта, проклятое кольцо, кольцо сломленного духа и амулет некроманта, то:
Гарантирует герою, что в начале боя все существа в армии противника окажутся под действием заклинаний «Замедление», «Неудача», «Слабость» и «Проклятие». Эффект действует на протяжении 10 ходов.
Помогите пожалуйста
Если вы понимаете, как привязать выполнение боевого скрипта к героям, надевшим определённые арты, то остальное всё достаточно просто:
function Start()
for side=0,1 do
if GetHero(side) then
if GetHeroName(GetHeroSide()) then --Ваша проверка в бою на героя. Я рекомендую в скрипте карты приключений создавать глоб. переменную вида "hero".."_NecArtSet" в единицу при наличии сета (и в ноль при отсутствии) и тут писать вместо проверки имени проверку вида if GetGameVar(GetHeroName(GetHeroSide()).."_NecArtSet")+0==1 then
startThread(function(side)
combatSetPause(1)
SummonCreature(side, CREATURE_YETI, 1)
for n, unit in GetCreatures(side) do if GetCreatureType(unit)==CREATURE_YETI then local _helper = unit break; end; end
while not exist(_helper) do sleep() end
for n, spell in {SPELL_MASS_SLOW, ...} --Список масскастов
UnitCastGlobalSpell(_helper, spell)
end
removeUnit(_helper)
combatSetPause(nil)
)
end
end
end
end
Скрипт написал без тестирований, поэтому адапатируйте и потестируйте, пожалуйста. Также вам понадобится заменить в характеристиках существа Neutrals/Yeti ману на ~200 и мастерство в школе так, чтобы держалось 10 ходов. Ну или с числом вызываемых поиграться