Advertisement
Te-ki

CCBootManager

Mar 19th, 2017
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.04 KB | None | 0 0
  1. --CCBootManager by Teki 0.1
  2.  
  3. local savedFile
  4. local savedValues
  5. local filePath = "BootMGR.conf"
  6.  
  7. local myTimer
  8. local timeout = 10
  9. local elapsed = 0
  10. local default
  11. local selected = 0
  12.  
  13. local monitor = term.current()
  14. local sizeX,sizeY = monitor.getSize()
  15.  
  16. function Save()
  17.     savedFile = fs.open(filePath, "w")
  18.     savedValues = {
  19.         [1] = timeout
  20.     }
  21.     savedFile.write(textutils.serialize(savedValues))
  22.     savedFile.flush()
  23.     savedFile.close()
  24.     sleep(0)
  25. end
  26.  
  27. function Load()
  28.     if fs.exists(filePath) and fs.getSize(filePath) > 0 and #tArgs == 0 then
  29.         savedFile = fs.open(filePath, "r")
  30.         savedValues = textutils.unserialize(savedFile.readAll())
  31.         if savedValues[15] == "false" or (savedValues[15] == "true" and tonumber(savedValues[1])+tonumber(savedValues[2])-tonumber(savedValues[3]) ~= 0) then
  32.             curX = tonumber(savedValues[1])
  33.             curY = tonumber(savedValues[2])
  34.             curZ = tonumber(savedValues[3])
  35.             dir = tonumber(savedValues[4])
  36.             lastX = tonumber(savedValues[5])
  37.             lastY = tonumber(savedValues[6])
  38.             lastZ = tonumber(savedValues[7])
  39.             lastDir = tonumber(savedValues[8])
  40.             targetX = tonumber(savedValues[9])
  41.             targetY = tonumber(savedValues[10])
  42.             targetZ = tonumber(savedValues[11])
  43.             alternate = savedValues[12] == "true"
  44.             needFuel = savedValues[13] == "true"
  45.             needClearInventory = savedValues[14] == "true"
  46.             done = savedValues[15] == "true"
  47.         else
  48.             savedValues = nil
  49.         end
  50.         savedFile.close()
  51.     end
  52. end
  53.  
  54. function draw()
  55.     monitor.clear()
  56.     -- Background
  57.     paintutils.drawFilledBox(2, 2, sizeX-1, sizeY-1, colors.white)
  58.    
  59.     -- Timeout
  60.     monitor.setBackgroundColour(colors.black)
  61.     monitor.setCursorPos(1,sizeY)
  62.     write(timeout - elapsed)
  63.    
  64.     -- Sleep
  65.     sleep(0)
  66. end
  67.  
  68. monitor.setBackgroundColour(colors.black)
  69. monitor.setTextColor(colors.white)
  70. monitor.clear()
  71. draw()
  72.  
  73. while elapsed <= timeout do
  74.     draw()
  75.     myTimer = os.startTimer(1)
  76.     while true do
  77.         event, side, xPos, yPos = os.pullEvent()
  78.        
  79.         if event == "mouse_click" then
  80.        
  81.         elseif event == "timer" then
  82.             elapsed = elapsed + 1
  83.             break
  84.         end
  85.     end
  86. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement