Timer (event)

From ComputerCraft Wiki
Jump to: navigation, search



Grid Modem.png  Event timer
Fired when a timer completes.
Returned Object 1 The timer's unique ID value (returned when os.startTimer(), which triggers this event, is called).


Grid paper.png  Example
This code will loop and refresh every 1 second. If the event that occurred was a not a timer (eg a key event from a keypress), the loop will complete.
Code
while true do
  os.startTimer(1)
  local event = os.pullEvent()
  if event == "timer" then
    print("Too slow!")
  else
    print("You've beaten me!")
    break
  end
end



Grid paper.png  Example
This code will output different text depending on which timer has completed.
Code
local timerA = os.startTimer(1)
local timerB = os.startTimer(2)

while true do
  local event, completed = os.pullEvent()
  if event == "timer" then
    if completed == timerA then
      print("TimerA has finished, restarting it now")
      timerA = os.startTimer(1)
    elseif completed == timerB then
      print("TimerB has finished, restarting it now")
      timerB = os.startTimer(2)
    else
      print("A timer finished, but it wasn't one of the ones I care about")
    end
  end
end