Why does it run twice?

Rainther

I guess I should write something of value here...
Reaction score
61
Solved for the moment, why is unknown

Can someone explain for me why this trigger is run twice?
JASS:
private function InterAct takes nothing returns nothing
    local trigger t = GetTriggeringTrigger()
    local Int d = GetTriggerStructA(t)
    local integer ID = GetIssuedOrderId()
    
    if d.first == true then
        set d.first = false
    call DisplayTextToForce( GetPlayersAll(), "Start" )
        if DisXY(GetUnitX(d.cast),GetUnitY(d.cast),GetUnitX(d.tar),GetUnitY(d.tar)) <= 250 then
            call Interact(d.cast,d.tar)
            call ClearTriggerStructA(t)
            call DisableTrigger(t)
            call DestroyTrigger(t)
        endif
    elseif ID != null or GetTriggerEventId() == EVENT_UNIT_DEATH or GetEnteringUnit() == d.cast then
        if GetEnteringUnit() == d.cast then
            call Interact(d.cast,d.tar)
        endif
        call ClearTriggerStructA(t)
        call DisableTrigger(t)
        call DestroyTrigger(t)
    call DisplayTextToForce( GetPlayersAll(), "Enter" )
    endif
    set ID = 0
    set t = null
endfunction

function Interacting takes unit cast, unit tar returns nothing
    local trigger t = CreateTrigger()
    local Int d = Trigg.create()

    set d.cast = cast
    set d.tar = tar
    set d.first = true
    set d.stop = false
    call SetTriggerStructA(t, d)
    call TriggerRegisterUnitEvent(t, cast, EVENT_UNIT_ISSUED_TARGET_ORDER)
    call TriggerRegisterUnitEvent(t, cast, EVENT_UNIT_ISSUED_POINT_ORDER)
    call TriggerRegisterUnitEvent(t, cast, EVENT_UNIT_ISSUED_ORDER)
    call TriggerRegisterUnitEvent(t, cast, EVENT_UNIT_DEATH)
    call TriggerRegisterUnitInRange(t, tar, 225, Filter(function True))
    call TriggerRegisterTimerEvent(t, 0, false)
    call TriggerAddAction(t, function InterAct)
    set t = null
endfunction


It runs twice if cast stand beside when it starts and when it enters withing range.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top