Добавлен Alonix
Как сделать систему стака баффа без кэша? (пример: юнит атакует врага. за каждую след. атаку уровень баффа на врага увеличивается.)
Пытался сделать так:
Пытался сделать так:
function Trig_Hell_mark_Conditions takes nothing returns boolean
return GetAttacker() == udg_Brutalstirke_owner
endfunction
function Trig_Hell_mark_Actions takes nothing returns nothing
local unit t = GetTriggerUnit()
local location loc = GetUnitLoc(t)
local integer i = GetUnitAbilityLevel(t,'B01U')
local unit d
if i==0 then
set d = CreateUnitAtLoc(GetOwningPlayer(udg_Brutalstirke_owner),'e00P',loc,0.0)
call IssueTargetOrder(d,"curse",t)
else
set i=i+1
set d = CreateUnitAtLoc(GetOwningPlayer(udg_Brutalstirke_owner),'e00P',loc,0.0)
call SetUnitAbilityLevel(d,'A05H',i)
call IssueTargetOrder(d,"curse",t)
endif
call PolledWait(0.2)
call ShowUnit(d,false)
call RemoveUnit(d)
set d=null
call RemoveLocation(loc)
set t=null
endfunction
//===========================================================================
function InitTrig_Hell_mark takes nothing returns nothing
set gg_trg_Hell_mark = CreateTrigger( )
call DisableTrigger( gg_trg_Hell_mark )
call TriggerRegisterAnyUnitEventBJ( gg_trg_Hell_mark, EVENT_PLAYER_UNIT_ATTACKED )
call TriggerAddCondition( gg_trg_Hell_mark, Condition( function Trig_Hell_mark_Conditions ) )
call TriggerAddAction( gg_trg_Hell_mark, function Trig_Hell_mark_Actions )
endfunction
но GetUnitAbilityLevel возвращает либо 0, либо 1. т.е. максимальный уровень баффа - 2.
Принятый ответ
Можно закрывать, ответ получен в другой теме
0
Alonix
12 лет назад
0
Можно закрывать, ответ получен в другой теме
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.