Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- rednet.open("right")
- m = peripheral.wrap("top")
- w,h = m.getSize()
- w = w+1
- h = h+1
- menu = "main"
- col = { ["white"]=1, ["orange"]=2, ["magenta"]=4, ["lightblue"]=8, ["yellow"]=16, ["lime"]=32, ["pink"]=64, ["gray"]=128, ["lightgray"]=256, ["cyan"]=512, ["purple"]=1024, ["blue"]=2048, ["brown"]=4096, ["green"]=8192, ["red"]=16384, ["black"]=32768 }
- function swrite(str,x,y,color)
- m.setCursorPos(x,y)
- m.setTextColor(col[color])
- m.write(str)
- end
- function drawbox(str,x1,x2,y1,y2,strcol,color)
- m.setCursorPos(x1,y1)
- m.setBackgroundColor(col[color])
- m.setTextColor(col[strcol])
- local bw = x2-x1
- local bh = y2-y1
- local bstr = " "
- while #bstr < bw do
- bstr = bstr.." "
- end
- for i=1,bh do
- m.setCursorPos(x1,y1+i-1)
- m.write(bstr)
- end
- m.setCursorPos(x1+bw/2-#str/2,y1+bh/2)
- m.write(str)
- m.setBackgroundColor(col["black"])
- return { [1]=x1, [2]=x2, [3]=y1, [4]=y2 }
- end
- function press(but)
- if event == "monitor_touch" then
- if pr2 >= but[1] and pr2 < but[2] and pr3 >= but[3] and pr3 < but[4] then
- return true
- else
- return false
- end
- end
- end
- function drawoutline(str,strcol,color)
- m.setBackgroundColor(col[color])
- m.setTextColor(col[strcol])
- drawbox(str,1,w,1,2,strcol,color)
- drawbox("",1,2,1,h,strcol,color)
- drawbox("",w-1,w,1,h,strcol,color)
- drawbox("",1,w,h-1,h,strcol,color)
- end
- function drawmainmenu()
- drawoutline("Welcome to Fair's base!","black","white")
- smain = drawbox("Storage",4,w-4,4,7,"black","yellow")
- pmain = drawbox("Production",4,w-4,9,12,"black","green")
- omain = drawbox("Other",4,w-4,14,17,"black","blue")
- menu = "main"
- end
- m.clear()
- drawmainmenu()
- while true do
- event,pr1,pr2,pr3 = os.pullEvent()
- if press(smain) then
- print("Pressed storage!")
- elseif press(pmain) then
- print("Pressed production!")
- elseif press(omain) then
- print("Pressed other!")
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment