-- LUA Script - precede every function and global member with lowercase name of script + '_main' local doorList = { Door1 = { order = 3, entered = false }, Door2 = { order = 2, entered = false }, Door3 = { order = 1, entered = false }, Door4 = { order = 4, entered = false } } function door_reporter2_init( e ) end local executeTimer = 0 local checkDelay = 1000 local currDoor = 1 local lastDoor = 4 local allDoorsEntered = false function door_reporter2_main( e ) if doorEntered == nil then return end local timeNow = g_Time if timeNow < executeTimer then return end executeTimer = timeNow + checkDelay if allDoorsEntered then PromptLocal( e, "All doors entered in order!" ) return end for k, v in pairs( doorList ) do if doorEntered( k ) then if v.order == currDoor and not v.entered then if currDoor == lastDoor then allDoorsEntered = true else currDoor = currDoor + 1 end end v.entered = true end end end