pluggeman

Mining Program

May 20th, 2017
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.71 KB | None | 0 0
  1. write("size?\n")
  2. size = read()
  3. write("\nY-Position?\n")
  4. yPos = read()
  5. write("\nMax Y?\n")
  6. maxY = read()
  7. write("\nMin Y?\n")
  8. minY = read()
  9. write("\nHow many items to ignore?\n")
  10. ignore_count = read()
  11.  
  12. function dropToChest()
  13. for i = ignore_count + 1, 16 do
  14. turtle.select(i)
  15. turtle.drop()
  16. end
  17. end
  18.  
  19. function compareDown()
  20. for i = 1, ignore_count do
  21. turtle.select(i)
  22. if turtle.compareDown() then
  23. return false
  24. end
  25. end
  26. return true
  27. end
  28.  
  29. function compareUp()
  30. for i = 1, ignore_count do
  31. turtle.select(i)
  32. if turtle.compareUp() then
  33. return false
  34. end
  35. end
  36. return true
  37. end
  38.  
  39. function compare()
  40. if compareUp() then
  41. turtle.digUp()
  42. end
  43. if compareDown() then
  44. turtle.digDown()
  45. end
  46. end
  47.  
  48. function dropIgnoreOverflow()
  49. for i = 1, ignore_count do
  50. if turtle.getItemCount(i) > 1 then
  51. turtle.select(i)
  52. turtle.drop(turtle.getItemCount(i)-1)
  53. end
  54. end
  55. end
  56.  
  57. function mine()
  58.  
  59. while not turtle.forward() do
  60. turtle.dig()
  61. end
  62. compare()
  63. end
  64.  
  65. function mineLine()
  66. compare()
  67. for i = 2, size do
  68. mine()
  69. end
  70. dropIgnoreOverflow()
  71. end
  72.  
  73. function mineLayer()
  74. for i = 1, size/2 do
  75. mineLine()
  76. turtle.turnRight()
  77. mine()
  78. turtle.turnRight()
  79. mineLine()
  80.  
  81. if i < size/2 then
  82. turtle.turnLeft()
  83. mine()
  84. turtle.turnLeft()
  85. end
  86. end
  87. turtle.turnRight()
  88. mineLine()
  89. turtle.turnRight()
  90. end
  91.  
  92. for iY = minY + 1, maxY-1, 3 do
  93. for i = yPos, iY, -1 do
  94. while not turtle.down() do
  95. turtle.digDown()
  96. end
  97. end
  98. mineLayer()
  99. for i = iY, yPos do
  100. while not turtle.up() do
  101. turtle.digUp()
  102. end
  103. end
  104. dropToChest()
  105. end
Advertisement
Add Comment
Please, Sign In to add comment