Advertisement
KnightHat

Turtle Miner

Dec 8th, 2019
386
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.74 KB | None | 0 0
  1. function dig()
  2.  while turtle.detect() do
  3.   turtle.dig()
  4.  end
  5.  os.sleep(0.5)
  6.  turtle.forward()
  7.  while turtle.detectDown() or turtle.detectUp() do
  8.   turtle.digUp()
  9.   turtle.digDown()
  10.  end
  11. end
  12.  
  13. function onelayer()
  14.  dig()
  15.  turtle.turnLeft()
  16.  dig()
  17.  turtle.turnRight()
  18.  turtle.turnRight()
  19.  turtle.forward()
  20.  dig()
  21.  turtle.turnLeft()
  22.  turtle.turnLeft()
  23.  turtle.forward()
  24.  turtle.turnRight()
  25. end
  26.  
  27. function placeTorch()
  28.  turtle.turnLeft()
  29.  turtle.forward()
  30.  turtle.select(16)
  31.  turtle.placeUp()
  32.  turtle.turnRight()
  33.  turtle.turnRight()
  34.  turtle.forward()
  35.  turtle.turnLeft()
  36.  turtle.select(1)
  37. end
  38.  
  39. function drop()
  40.  for i = 1, 15 do
  41.   turtle.select(i)
  42.   turtle.dropDown(64)
  43.  end
  44. end
  45.  
  46. run = 0
  47.  
  48. b = 0
  49.  
  50. m = 0
  51.  
  52. tunnel = 1
  53.  
  54. term.clear()
  55. term.setCursorPos(1,1)
  56. term.write("Length (Max = 50): ")
  57. run = read()
  58. term.write("Number of tunnels: ")
  59. tunnel = read()
  60.  
  61. for i = 1, run do
  62.  
  63.  m = run * 5 * tunnel * 98
  64.  if turtle.getFuelLevel() <= m then
  65.   b = i - 1
  66.  turtle.turnLeft()
  67.  turtle.turnLeft()
  68.  for i = 1, b do
  69.   turtle.forward()
  70.  end
  71.  turtle.down()
  72.  drop()
  73.  turtle.up()
  74.  turtle.turnRight()
  75.  turtle.turnRight()
  76.   m = m / 80
  77.   m = m + 1
  78.   turtle.turnLeft()
  79.   turtle.select(1)
  80.   turtle.suck(m)
  81.   turtle.refuel(m)
  82.   turtle.turnRight()
  83.   b = i - 1
  84.  for i = 1, b do
  85.   turtle.forward()
  86.  end
  87.  end
  88.  
  89.  if turtle.getItemSpace(15) <= 63 then
  90.   b = i - 1
  91.  turtle.turnLeft()
  92.  turtle.turnLeft()
  93.  for i = 1, b do
  94.   turtle.forward()
  95.  end
  96.  turtle.down()
  97.  drop()
  98.  turtle.up()
  99.  turtle.turnRight()
  100.  turtle.turnRight()
  101.   b = i - 1
  102.  for i = 1, b do
  103.   turtle.forward()
  104.  end
  105.  end
  106.  
  107.  if turtle.getItemCount(16) <= 1 then
  108.   b = i - 1
  109.  turtle.turnLeft()
  110.  turtle.turnLeft()
  111.  for i = 1, b do
  112.   turtle.forward()
  113.  end
  114.  turtle.down()
  115.  drop()
  116.  turtle.up()
  117.  turtle.turnRight()
  118.  turtle.turnRight()
  119.   turtle.turnRight()
  120.   turtle.select(16)
  121.   turtle.suck(63)
  122.   turtle.turnLeft()
  123.   b = i - 1
  124.  for i = 1, b do
  125.   turtle.forward()
  126.  end
  127.  turtle.select(1)
  128.  end
  129.  
  130.  turtle.select(1)
  131.  onelayer()
  132.  
  133.  if i % 4 == 0 then
  134.   placeTorch()
  135.  end
  136.  
  137. end
  138.  
  139. if run % 4 == 3 then
  140.  turtle.select(16)
  141.  turtle.placeUp()
  142.  turtle.select(1)
  143. end
  144.  
  145. turtle.back()
  146. turtle.turnRight()
  147. turtle.forward()
  148. for i = 1, 3 do
  149.  onelayer()
  150. end
  151. placeTorch()
  152. turtle.back()
  153. turtle.turnRight()
  154. turtle.forward()
  155.  
  156. local h = 0
  157. h = run - 3
  158. for i = 1, h do
  159.  if i % 4 == 0 then
  160.   placeTorch()
  161.  end
  162.  
  163.  b = i + 1
  164.  if turtle.getItemSpace(15) <= 63 then
  165.   for i = 1, b - 1 do
  166.    turtle.back()
  167.   end
  168.   turtle.turnRight()
  169.   for i = 1, 3 do
  170.    turtle.forward()
  171.   end
  172.   turtle.turnLeft()
  173.   for i = 1, run - 1 do
  174.    turtle.forward()
  175.   end
  176.   turtle.down()
  177.   drop()
  178.   turtle.up()
  179.   turtle.turnRight()
  180.   turtle.turnRight()
  181.   for i = 1, run - 1 do
  182.    turtle.forward()
  183.   end
  184.   turtle.turnRight()
  185.   for i = 1, 3 do
  186.    turtle.forward()
  187.   end
  188.   turtle.turnRight()
  189.   for i = 1, b do
  190.    turtle.forward()
  191.   end
  192.  end
  193.  
  194.  if turtle.getItemCount(16) <= 1 then
  195.   for i = 1, b - 1 do
  196.    turtle.back()
  197.   end
  198.   turtle.turnRight()
  199.   for i = 1, 3 do
  200.    turtle.forward()
  201.   end
  202.   turtle.turnLeft()
  203.   for i = 1, run - 1 do
  204.    turtle.forward()
  205.   end
  206.   turtle.down()
  207.   drop()
  208.   turtle.up()
  209.   turtle.turnLeft()
  210.   turtle.select(16)
  211.   turtle.suck(63)
  212.   turtle.turnLeft()
  213.   for i = 1, run - 1 do
  214.    turtle.forward()
  215.   end
  216.   turtle.turnRight()
  217.   for i = 1, 3 do
  218.    turtle.forward()
  219.   end
  220.   turtle.turnRight()
  221.   for i = 1, b do
  222.    turtle.forward()
  223.   end
  224.   turtle.select(1)
  225.  end
  226.  
  227.  turtle.select(1)
  228.  onelayer()
  229.  
  230. end
  231.  
  232. for  i = 1, h do
  233.  turtle.back()
  234. end
  235. turtle.turnRight()
  236. for i = 1, 3 do
  237.  turtle.forward()
  238. end
  239. turtle.turnLeft()
  240. for i = 1, run do
  241.  turtle.forward()
  242. end
  243. turtle.down()
  244. drop()
  245. turtle.up()
  246. turtle.turnLeft()
  247. turtle.turnLeft()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement