guitarplayer616

Turtle Schematic Setup 3 Backup

Dec 17th, 2015
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.84 KB | None | 0 0
  1. if fs.exists("schemAPI") then
  2.         fs.delete("schemAPI")
  3. end
  4. shell.run("pastebin get kpjMGqfq schemAPI")    
  5.  
  6.  
  7. function gpsSetup()
  8.     for _,v in ipairs(peripheral.getNames()) do
  9.             if peripheral.getType(v)=="modem" then
  10.                     rednet.open(v)
  11.             end
  12.     end
  13.     if gps.locate() then
  14.         gpsi = true
  15.         origDir = calibrateDir()
  16.         local h,k,l = gps.locate()
  17.         local k = k + 1
  18.         Hoff,Koff,Loff = h,k,l
  19.     else
  20.         origDir = "south"
  21.     end
  22. end
  23.  
  24.  
  25. function copySetupVars()
  26.         local h = fs.open("reference",'w')
  27.         h.writeLine("slots = {}")
  28.         h.writeLine("filename = ".."\""..tostring(filename).."\"")
  29.         for i,v in pairs(slots) do
  30.                 h.writeLine("slots\["..i.."\] = {}")
  31.                 for i2,v2 in pairs(v) do
  32.                         h.writeLine("slots\["..i.."\]\["..i2.."\] = {}")
  33.                         for i3,v3 in pairs(v2) do
  34.                                 h.writeLine("slots\["..i.."\]\["..i2.."\]\["..i3.."\] = "..tostring(v3))
  35.                         end
  36.                 end
  37.         end
  38.         h.writeLine("invList = {}")
  39.         for i,v in pairs(invList) do
  40.                 h.writeLine("invList\["..i.."\] = {}")
  41.                 for i2,v2 in pairs(v) do
  42.                         h.writeLine("invList\["..i.."\]\[".."\""..i2.."\"".."\] = "..tostring(v2))
  43.                 end
  44.         end
  45.         h.writeLine("height = "..tostring(height))
  46.         h.writeLine("width = "..tostring(width))
  47.         h.writeLine("length = "..tostring(length))
  48.         h.writeLine("chestOrder = "..tostring(chestOrder))
  49.         h.writeLine("enderchest1 = "..tostring(enderchest1))
  50.         h.writeLine("enderchest2 = "..tostring(enderchest2))
  51.         h.writeLine("origDir = ".."\""..tostring(origDir).."\"")
  52.         h.writeLine("Hoff, Koff, Loff = "..tostring(Hoff)..", "..tostring(Koff)..", "..tostring(Loff))
  53.         h.writeLine("blocks = {}")
  54.         for i,v in pairs(blocks) do
  55.                 h.writeLine("blocks\["..i.."\] = "..tostring(v))
  56.         end
  57.  
  58.         h.writeLine("data = {}")
  59.         for i,v in pairs(data) do
  60.                 h.writeLine("data\["..i.."\] = "..tostring(v))
  61.         end
  62.      
  63.         h.close()
  64. end
  65.  
  66. if not fs.exists("reference") then
  67.     if fs.exists("position") then
  68.         fs.delete("position")
  69.     end
  70.     if fs.exists("objective") then
  71.         fs.delete("objective")
  72.     end
  73.         shell.run("schemAPI")
  74.         heightPos = -1
  75.         widthPos = 0
  76.         lengthPos = 0
  77.         face = "south"
  78.         x = 0
  79.         y = 0
  80.         z = 0
  81.         enderchest1 = 15
  82.         enderchest2 = 16
  83.         chestOrder = 1
  84.         blocks = {}
  85.         data = {}
  86.         gpsSetup()
  87.         tArgs = {...}
  88.         if #tArgs ~= 1 then
  89.                 print("Usage: schemSetup <gunzipped schematic file>")
  90.                 return
  91.         end
  92.  
  93.         filename = tArgs[1]
  94.  
  95.         if not fs.exists(filename) then
  96.                 print("File does not exist.")
  97.                 return
  98.         end
  99.  
  100.         handle = fs.open(filename, "rb")
  101.  
  102.         setup()
  103.         copySetupVars()
  104. end
  105.  
  106.  
  107.  
  108. if turtle.getFuelLevel() == 0 then
  109.         print("No Fuel")
  110.         error()
  111. elseif turtle.getFuelLevel() < 300 then
  112.         print("Low Fuel")
  113.         error()
  114. end
  115.  
  116. function recordPos(heightPos,widthPos,lengthPos,face)
  117.         local h = fs.open("position","w")
  118.         h.writeLine("heightPos = "..tostring(heightPos))
  119.         h.writeLine("widthPos = "..tostring(widthPos))
  120.         h.writeLine("lengthPos = "..tostring(lengthPos))
  121.         h.writeLine("face = ".."\""..tostring(face).."\"")
  122.         h.close()
  123. end
  124.  
  125. if tArgs then
  126.     recordPos(-1,0,0,"south")
  127.     recordObj(x,y,z)
  128. else
  129.     shell.run("reference")
  130.     shell.run("position")
  131.     shell.run("objective")
  132. end
  133.  
  134. local h = fs.open("startup","w")
  135. h.write([[
  136. shell.run("reference")
  137. shell.run("schemAPI")
  138. checkIfRefill()
  139. --resynchronize()
  140. autorun()
  141. ]])
  142. h.close()
Add Comment
Please, Sign In to add comment