Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local tick = 0
- local backOutputColor = 0
- local function timerOutput(side, setColors)
- redstone.setBundledOutput(side, setColors)
- end
- firstTime = true
- while true do
- if not rs.getInput("front") then
- if firstTime then
- print("------------")
- print("Timer Active")
- print("------------")
- firstTime = false
- end
- -- Timers for back output.
- backOutputColor = 0
- -- Pulse every:
- if tick ~= 0 then
- -- 1/10 Second
- if math.fmod(tick, 2) == 0 then
- backOutputColor = backOutputColor + colors.white
- end
- -- 1/2 Second
- if math.fmod(tick, 5) == 0 then
- backOutputColor = backOutputColor + colors.orange
- end
- -- 1 Second
- if math.fmod(tick, 10) == 0 then
- backOutputColor = backOutputColor + colors.magenta
- end
- -- 2 Second
- if math.fmod(tick, 20) == 0 then
- backOutputColor = backOutputColor + colors.lightBlue
- end
- -- 3 Second
- if math.fmod(tick, 30) == 0 then
- backOutputColor = backOutputColor + colors.yellow
- end
- -- 4 Second
- if math.fmod(tick, 40) == 0 then
- backOutputColor = backOutputColor + colors.lime
- end
- -- 5 Second
- if math.fmod(tick, 50) == 0 then
- backOutputColor = backOutputColor + colors.pink
- end
- -- 10 Second
- if math.fmod(tick, 100) == 0 then
- backOutputColor = backOutputColor + colors.gray
- end
- -- 20 Second
- if math.fmod(tick, 200) == 0 then
- backOutputColor = backOutputColor + colors.lightGray
- end
- -- 30 Second
- if math.fmod(tick, 300) == 0 then
- backOutputColor = backOutputColor + colors.cyan
- end
- -- 1 Minute
- if math.fmod(tick, 600) == 0 then
- backOutputColor = backOutputColor + colors.purple
- end
- -- 5 Minute
- if math.fmod(tick, 3000) == 0 then
- backOutputColor = backOutputColor + colors.blue
- end
- -- 10 Minute
- if math.fmod(tick, 6000) == 0 then
- print("10 Minutes Complete.")
- backOutputColor = backOutputColor + colors.brown
- end
- -- 20 Minute
- if math.fmod(tick, 12000) == 0 then
- backOutputColor = backOutputColor + colors.green
- end
- -- 30 Minute
- if math.fmod(tick, 18000) == 0 then
- backOutputColor = backOutputColor + colors.red
- end
- -- 1 Hour
- if math.fmod(tick, 36000) == 0 then
- print("1 Hour Complete")
- backOutputColor = backOutputColor + colors.black
- end
- end
- -- Set Bundled Cable backoutput
- timerOutput("back", backOutputColor)
- -- Add timers for bundled output to any other side.
- -- Base time interval (1/10 second) == 1 Redstone tick == 2 Game Ticks
- sleep(.1)
- -- Reset tick count in case there is a max int size
- if tick == 36000 then
- tick = 0
- end
- tick = tick + 1
- else
- term.clear()
- term.setCursorPos(1,1)
- timerOutput("back", 0)
- print("Timer Disabled, Redstone Low in front to enable.")
- os.pullEvent("redstone")
- if not rs.getInput("front") then
- firstTime = true
- tick = 0
- end
- end
- end
- -- Colors API Cheat Sheet
- --[[
- colors.white
- colors.orange
- colors.magenta
- colors.lightBlue
- colors.yellow
- colors.lime
- colors.pink
- colors.gray
- colors.lightGray
- colors.cyan
- colors.purple
- colors.blue
- colors.brown
- colors.green
- colors.red
- colors.black
- ]]--
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement