kingkingyyk3
Visitor (Welcome to the Jungle, Baby!)
- Reaction score
- 216
bump
globals
private integer Index
endglobals
private function Effect3 takes nothing returns nothing
local real dmg = GetUnitState(GetEnumUnit(),UNIT_STATE_MAX_LIFE) * DAMAGE / 100
call SetUnitPosition(GetEnumUnit(),Data(Index).Ex[Data(Index).tick],Data(Index).Ey[Data(Index).tick])
call UnitDamageTarget(Data(Index).cs,GetEnumUnit(),dmg*PHYSICAL_DAMAGE/100,false,false,DAMAGE_A_ATTACK_TYPE,DAMAGE_A_DAMAGE_TYPE,DAMAGE_A_WEAPON_TYPE)
call UnitDamageTarget(Data(Index).cs,GetEnumUnit(),dmg*MAGICAL_DAMAGE/100,false,false,DAMAGE_B_ATTACK_TYPE,DAMAGE_B_DAMAGE_TYPE,DAMAGE_B_WEAPON_TYPE)
call IssueTargetOrder(Data(Index).dummy,"slow",GetEnumUnit())
call GroupAddUnit(Data(Index).picked,GetEnumUnit())
endfunction
private static method End takes nothing returns boolean
... // here is .tick still -1
loop
call DestroyEffect(.eff[.tick]) // you access slot -1 <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" />
...
set .tick = .tick + 1
exitwhen .tick > .waveCount
endloop
...
endmethod
private static method Periodic2 takes nothing returns boolean
...
loop
...
set .tick = .tick - 1
exitwhen .tick == -1 // notice .tick is -1 when the next handle-func is prepared
endloop
call KT_Add(function thistype.End,this,GROUND_EFFECT_DURATION)
return true
endmethod