dynamicXblue

Turtle Mining Script

Dec 22nd, 2020 (edited)
251
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 3.21 KB | None | 0 0
  1. print("Enter size (Width Length Height)")
  2. local input = read()
  3.  
  4. vals = {}
  5. for val in (input.." "):gmatch(".- ") do table.insert(vals, val) end
  6. local x,z,y = vals[1], vals[2], vals[3]
  7. print(x,z,y)
  8.  
  9. local FuelLevel = turtle.getFuelLevel()
  10.  
  11. local needed = (x*y*z) + y + 2
  12.  
  13. local held = 0
  14.  
  15. for i = 1, y, 1 do
  16.     if (x*z) + held >= 32 then
  17.         needed = needed + i
  18.         held=0
  19.     else
  20.         held = held + (x*z)
  21.     end
  22. end
  23.  
  24. if z % 2 == 0 and y % 2 ~= 0 then
  25.    needed = needed + (z-1)
  26. end
  27. if z % 2 ~= 0 and y % 2 ~= 0 then
  28.     needed = needed + ((z-1)+(x-1))
  29. end
  30.  
  31. print("Standard turtle max fuel: 20,000")
  32. print("Advanced turtle max fuel: 100,000")
  33.  
  34. while FuelLevel < needed do
  35.     print("Fuel needed: "..(needed - FuelLevel))
  36.     print("Coal needed: "..((needed - FuelLevel)/80))
  37.     print("Coal Blocks needed: "..((needed - FuelLevel)/720))
  38.     print("Lava Buckets needed: "..((needed - FuelLevel)/1000))
  39.     while turtle.getItemCount(1) < 1 do
  40.         os.sleep()
  41.     end
  42.     turtle.refuel()
  43.     FuelLevel = turtle.getFuelLevel()
  44. end
  45.  
  46. print("Starting in 3 seconds...")
  47. os.sleep(3)
  48.  
  49. turtle.select(16)
  50. turtle.placeUp()
  51. turtle.select(1)
  52.  
  53. for i=1, y, 1 do
  54.     turtle.digDown()
  55.     turtle.down()
  56.  
  57.     for j=1, z, 1 do
  58.         if j > 1 then
  59.             if j % 2 ~= 0 then
  60.                 if z%2 == 0 and i%2 == 0 then
  61.                     turtle.turnLeft()
  62.                 else
  63.                     turtle.turnRight()
  64.                 end
  65.             else
  66.                 if z%2 == 0 and i%2 == 0 then
  67.                     turtle.turnRight()
  68.                 else
  69.                     turtle.turnLeft()
  70.                 end
  71.             end
  72.             while turtle.detect() do
  73.                 turtle.dig()
  74.             end
  75.             turtle.forward()
  76.             if j % 2 ~= 0 then
  77.                 if z%2 == 0 and i%2 == 0 then
  78.                     turtle.turnLeft()
  79.                 else
  80.                     turtle.turnRight()
  81.                 end
  82.             else
  83.                 if z%2 == 0 and i%2 == 0 then
  84.                     turtle.turnRight()
  85.                 else
  86.                     turtle.turnLeft()
  87.                 end
  88.             end
  89.         end
  90.         for k=1, x-1, 1 do
  91.             while turtle.detect() do
  92.                 turtle.dig()
  93.             end
  94.             turtle.forward()
  95.         end
  96.     end
  97.  
  98.     if i % 2 == 0  and turtle.getItemCount(16) > 0 then
  99.         for j=1, i, 1 do
  100.             turtle.up()
  101.         end
  102.         for j=1, 16, 1 do
  103.             turtle.select(j)
  104.             turtle.dropUp()
  105.         end
  106.         for j=1, i, 1 do
  107.             turtle.down()
  108.         end
  109.         turtle.select(1)
  110.     end
  111.  
  112.     turtle.turnLeft()
  113.     turtle.turnLeft()
  114.  
  115. end
  116.  
  117. for i=1, y, 1 do
  118.     turtle.up()
  119. end
  120. if z % 2 == 0 and y % 2 ~= 0 then
  121.     turtle.turnRight()
  122.     for i=1 , z-1 do
  123.         turtle.forward()
  124.     end
  125.     turtle.turnLeft()
  126. end
  127.  
  128. if z % 2 ~= 0 and y % 2 ~= 0 then
  129.     for i=1 , x-1 do
  130.         turtle.forward()
  131.     end
  132.     turtle.turnLeft()
  133.     for i=1 , z-1 do
  134.         turtle.forward()
  135.     end
  136.     turtle.turnLeft()
  137. end
  138.  
  139. for i=1, 16, 1 do
  140.     turtle.select(i)
  141.     turtle.dropUp()
  142. end
  143.  
  144. turtle.select(0)
  145.  
  146. print("Mining Complete!")
Add Comment
Please, Sign In to add comment