Advertisement
fauxiss

3xTunnelAdventures

Jan 20th, 2014
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.47 KB | None | 0 0
  1. local tArgs = { ...}
  2. if #tArgs ~=1 then
  3.     print( "Usage: 3xtunnel <TunnelLength>" )
  4.     return
  5. end
  6.  
  7. local length = tonumber( tArgs[1] )
  8. if length < 1 then
  9.     print(  "Tunnel Length must be positive" )
  10.     return
  11. end
  12.  
  13. local function refuel()
  14.     local fuelLevel = turtle.getFuelLevel()
  15.     if fuelLevel == "unlimited" or fuelLevel > 0 then
  16.         return
  17.     end
  18.  
  19.     local function tryRefuel()
  20.         for n=1,16 do
  21.             if turtle.getItemCount(n) > 0 then
  22.                 turtle.select(n)
  23.                 if turtle.refuel(1) then
  24.                     turtle.select(1)
  25.                     return true
  26.                 end
  27.             end
  28.         end
  29.         turtle.select(1)
  30.         return false
  31.     end
  32.  
  33.     if not tryRefuel() then
  34.         print( "Add more fuel to continue." )
  35.         while not tryRefuel() do
  36.             sleep(1)
  37.         end
  38.         print( "Resuming Tunnel." )
  39.     end
  40. end
  41. local function floorCheck()
  42.     while not turtle.detectDown() do
  43.         turtle.select(1)
  44.         turtle.placeDown()
  45.     end
  46. end
  47.  
  48. local function nextSpace()
  49.     refuel()
  50.     while not turtle.forward() do
  51.         while not turtle.dig() do
  52.             turtle.attack()
  53.         end
  54.     end
  55. end
  56.  
  57. local function strip()
  58.     nextSpace()
  59.     floorCheck()
  60.     turtle.turnLeft()
  61.     turtle.dig()
  62.     turtle.digUp()
  63.     turtle.up()
  64.     turtle.dig()
  65.     turtle.digUp()
  66.     turtle.up()
  67.     turtle.dig()
  68.     turtle.turnRight()
  69.     turtle.turnRight()
  70.     turtle.dig()
  71.     turtle.down()
  72.     turtle.dig()
  73.     turtle.down()
  74.     turtle.dig()
  75.     turtle.turnLeft()
  76. end
  77.  
  78. refuel()
  79. for x = 1, length do
  80.     strip()
  81. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement