Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- while true do
- function setup()
- term.setTextColor(colors.lime)
- term.clear()
- term.setCursorPos(6,1)
- write("ROBCO INDUSTRIES UNIFIED OPERATING SYSTEM")
- term.setCursorPos(8,2)
- write("COPYWRITE 2075-2077 ROBCO INDUSTRIES")
- term.setCursorPos(22,3)
- write("-Server 2-")
- term.setCursorPos(5,5)
- write(">\ Welcome, USER")
- term.setCursorPos(5,6)
- write("-------------------------------------------")
- term.setCursorPos(5,7)
- end
- local menu_options = {
- [1] = {text="Open Door", color=colors.lime},
- [2] = {text="Close Door", color=colors.lime},
- [3] = {text="Airlock Doors", color=colors.lime}
- }
- local function drawmenu(selected)
- local yPos = 7
- for index, data in pairs(menu_options) do
- menu_options[index].bounds = {
- x1 = 5,
- x2 = 5 + (#data.text),
- y = yPos
- }
- term.setTextColor(data.color)
- term.setCursorPos(data.bounds.x1, data.bounds.y)
- local text =
- index==selected and "> "..data.text or
- " "..data.text
- term.write(text)
- yPos = yPos + 1
- end
- end
- local function checkClick(x,y)
- for index, data in pairs(menu_options) do
- if x>= data.bounds.x1 and x<= data.bounds.x2 and y==data.bounds.y then
- return index
- end
- end
- return false
- end
- setup()
- local selector = 1
- while true do
- drawmenu(selector)
- local e = {os.pullEvent()}
- if e[1] == "key" then
- if e[2] == keys.down then
- selector = selector < #menu_options and selector+1 or 1
- else if e[2] == keys.up then
- selector = selector > 1 and selector-1 or #menu_options
- else if e[2] == keys.enter then
- break
- end
- end
- end
- elseif e[1] == "mouse_click" then
- local value = checkClick(e[3], e[4])
- if value then
- selector = value
- break
- end
- end
- end
- if selector == 1 then
- rs.setBundledOutput("left", colors.red)
- sleep(1)
- rs.setBundledOutput("left", colours.blue)
- sleep(10)
- rs.setBundledOutput("left", colours.black)
- end
- if selector == 2 then
- rs.setBundledOutput("left", 0)
- sleep(1)
- rs.setBundledOutput("left", colors.cyan)
- sleep(10)
- rs.setBundledOutput("left", colors.green)
- sleep(1)
- rs.setBundledOutput("left", 0)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement