где 'A001' - способность Увечье с 15% замедлением EFFECT_TYPE_TARGET - возможно нужно использовать EFFECT_TYPE_EFFECT, но оба варианта не работают target - юнит-враг "overhead" - анимация спелла будет над головой врага Почему-то не работает... Я хочу кодом накастовать на врага закл, причем с помощью дамми это слишком долго(всё происходит в цикле) вот собственно весь спелл, функция вызывается когда ты кастуешь этот спелл гером(проверено)
void castA002() { unit caster = GetSpellAbilityUnit(); unit target = GetSpellTargetUnit(); player owner = GetOwningPlayer(caster); group g; real seed = GetRandomReal(0.00, 1.00); real x = GetUnitX(target); real y = GetUnitY(target); TriggerSleepAction(DistanceBetweenCoords(x, y, GetUnitX(caster), GetUnitY(caster))/1600.00); if(seed < 0.90) { g = CreateGroup(); GroupEnumUnitsInRange(g, x, y, 500.00, null); loop { target = FirstOfGroup(g); exitwhen(target == null); if(GetOwningPlayer(target) == PLAYER_8) { BJDebugMsg("+1"); AddSpellEffectTargetById('A001', EFFECT_TYPE_TARGET, target, "overhead"); } GroupRemoveUnit(g, target); } DestroyGroup(g); } g=null; caster=null; target=null; owner=null; }
А цикл на даммикаст не влияет. Я делал спелл с даммикастом волны на координаты в цикле на 7. Никаких задержек и прочей лабуды. Написать функу даммикаста с таймером истечение дело трех минут же. Даже на жасс2
Добавлено (15 Ноябрь 2011, 15:34:06) --------------------------------------------- Создаст n-количество независящих друг от друга дамми и все
Как их убрать? Уже написал- добавляешь таймер истечения и юнит не утекает. Ну азы же
Добавлено (15 Ноябрь 2011, 16:15:19) --------------------------------------------- Нет, работает быстро (я уже не раз проверил это при помощи даммикаста самых разных спеллов. Плюс я юзаю Issue...OrderById() она работает быстрее)