I know JASS (see my blink strike spell)
I know JASS, it is the loops problem, the memory is not leaking as both things happen at the same time, (what i am talking about is the messed up time show, try making one and you will see what i mean) This is what i did
function Trig_Poison_Bomb_Conditions takes nothing returns boolean
if ( not ( GetUnitTypeId(GetTriggerUnit()) == 'oeye' ) ) then
return false
endif
return true
endfunction
function Trig_Poison_Bomb_Actions takes nothing returns nothing
set udg_i = 60
loop
exitwhen ( udg_i == 0 ) or (IsUnitDeadBJ(GetTriggerUnit()) == true )
set udg_i = udg_i - 1
call DestroyTextTagBJ( udg_Timers[GetUnitUserData(GetTriggerUnit())] )
call CreateTextTagLocBJ( I2S(( udg_i )), OffsetLocation(GetUnitLoc(GetTriggerUnit()), -32.00, 0), 32.00, 10, 100, 100, 100, 0 )
set udg_Timers[GetUnitUserData(GetTriggerUnit())] = GetLastCreatedTextTag()
call TriggerSleepAction( 1.00 )
endloop
call DestroyTextTagBJ( udg_Timers[GetUnitUserData(GetTriggerUnit())] )
call CreateNUnitsAtLoc( 1, 'hfoo', GetOwningPlayer(GetTriggerUnit()), GetUnitLoc(GetTriggerUnit()), bj_UNIT_FACING )
call UnitApplyTimedLifeBJ( 300.00, 'BTLF', GetLastCreatedUnit() )
call IssuePointOrderLocBJ( GetLastCreatedUnit(), "deathanddecay", GetUnitLoc(GetTriggerUnit()) )
call ExplodeUnitBJ( GetTriggerUnit() )
endfunction
//===========================================================================
function InitTrig_Poison_Bomb takes nothing returns nothing
set gg_trg_Poison_Bomb = CreateTrigger( )
call TriggerRegisterEnterRectSimple( gg_trg_Poison_Bomb, GetPlayableMapRect() )
call TriggerAddCondition( gg_trg_Poison_Bomb, Condition( function Trig_Poison_Bomb_Conditions ) )
call TriggerAddAction( gg_trg_Poison_Bomb, function Trig_Poison_Bomb_Actions )
endfunction