Advertisement
Inksaver

Superminer startup

Sep 11th, 2014
407
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.41 KB | None | 0 0
  1. local version = "1.0"
  2. local pastebinCode = "DjYnc3QN"
  3.  
  4. local fileList = {}
  5. local lastFile = ""
  6. local fileHandle = ""
  7. local countdown = 10
  8. local event = ""
  9. local param1 = ""
  10. local doContinue = true
  11.    
  12. fileQualifier = ""
  13. newFileNumber = 0
  14.  
  15. term.clear()
  16. term.setCursorPos(1,1)
  17. print("Superminer startup version "..version)
  18. if fs.exists("/Reboot") then
  19.     if fs.exists("Reboot/reboot001.log") then
  20.         fileList = fs.find("Reboot/*.log")
  21.         table.sort(fileList)
  22.         lastFile = fileList[#fileList]
  23.         fileQualifier = string.sub(lastFile, 14, 16)
  24.         newFileNumber = tonumber(fileQualifier) + 1
  25.         if newFileNumber < 10 then
  26.             fileQualifier = "00"..tostring(newFileNumber)
  27.         elseif newFileNumber < 100 then
  28.             fileQualifier = "0"..tostring(newFileNumber)
  29.         else
  30.             fileQualifier = tostring(newFileNumber)
  31.         end
  32.     else
  33.         fileQualifier = "001"
  34.     end
  35. else
  36.     print("Reboot directory created")
  37.     fs.makeDir("/Reboot")
  38.     fileQualifier = "001"
  39. end
  40. fileHandle = fs.open("Reboot/reboot"..fileQualifier..".log", "w")
  41. fileHandle.writeLine("Turtle restarted")
  42. fileHandle.close()
  43. print("Reboot logfile written: Reboot/reboot"..fileQualifier..".log")
  44. repeat
  45.     os.startTimer(2)
  46.     local event, param1 = os.pullEvent()
  47.     if event == "timer" then
  48.         term.setCursorPos(1,6)
  49.         print("loading superminer in "..countdown.." secs...")
  50.         print()
  51.         print("Press 'x' to abort")
  52.         countdown = countdown - 1
  53.     elseif event == "char" and param1 == "x" then
  54.         print("Startup aborted")
  55.         doContinue = false
  56.         break
  57.     end
  58. until countdown == 0
  59.  
  60. if doContinue then
  61.     if fs.exists("superminer.lua") then
  62.         shell.run("superminer.lua")
  63.     elseif fs.exists("Superminer") then
  64.         shell.run("Superminer")
  65.     else
  66.         print()
  67.         print("Cannot find superminer.lua or superminer")
  68.     end
  69. else
  70.     doContinue = true
  71.     sleep(1)
  72.     term.clear()
  73.     term.setCursorPos(1,1)
  74.     print("Superminer startup menu:")
  75.     print()
  76.     print("Choose your option:")
  77.     print()
  78.     print("1 Reset all - New mining position")
  79.     print("2 Reset reboot file")
  80.     print("3 Exit to CraftOS")
  81.     event, param1 = os.pullEvent ("char")
  82.     if param1 == "1" then
  83.         if fs.exists("/Reboot") then
  84.             fs.delete("/Reboot")
  85.             print("Reboot folder deleted")
  86.         end
  87.         if fs.exists("superminer.ini") then
  88.             fs.delete("superminer.ini")
  89.             print("Configuration file deleted")
  90.         end
  91.         if fs.exists("superminer.recover") then
  92.             fs.delete("superminer.recover")
  93.             print("Recovery file deleted")
  94.         end
  95.         fileList = fs.find("*.txt")
  96.         if fileList ~= nil then
  97.             table.sort(fileList)
  98.             for i = 1, #fileList do
  99.                 fs.delete(fileList[i])
  100.             end
  101.             print ("Logfiles deleted")
  102.         end
  103.     elseif param1 == "2" then
  104.         if fs.exists("/Reboot") then
  105.             fs.delete("/Reboot")
  106.             print("Reboot folder deleted")
  107.         else
  108.             print("Reboot folder already deleted")
  109.         end
  110.     elseif param1 == "3" then
  111.         term.clear()
  112.         term.setCursorPos(1,1)
  113.         doContinue = false
  114.     end
  115.     if doContinue then
  116.         sleep(2)
  117.         term.clear()
  118.         term.setCursorPos(1,1)
  119.         print("Reset request successful")
  120.         print()
  121.         print("Type 'reboot' at terminal to start here")
  122.         print()
  123.         print("Exit, break turtle and move to start elsewhere")
  124.     end
  125. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement