DrFair

Redwood farm

Feb 18th, 2013
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.06 KB | None | 0 0
  1. x,y,z = 0,0,0
  2.  
  3. function moveUp()
  4. if turtle.up() then
  5. z = z + 1
  6. return true
  7. end
  8. end
  9.  
  10. function moveDown()
  11. if turtle.down() then
  12. z = z - 1
  13. return true
  14. end
  15. end
  16.  
  17. function moveFor()
  18. if turtle.forward() then
  19. x = x + 1
  20. return true
  21. end
  22. end
  23.  
  24. function moveBack()
  25. if turtle.back() then
  26. x = x - 1
  27. return true
  28. end
  29. end
  30.  
  31. function moveRight()
  32. turtle.turnRight()
  33. turtle.dig()
  34. if turtle.forward() then
  35. y = y + 1
  36. turtle.turnLeft()
  37. return true
  38. else
  39. turtle.turnLeft()
  40. return false
  41. end
  42. end
  43.  
  44. function moveLeft()
  45. turtle.turnLeft()
  46. turtle.dig()
  47. if turtle.forward() then
  48. y = y - 1
  49. turtle.turnRight()
  50. return true
  51. else
  52. turtle.turnRight()
  53. return false
  54. end
  55. end
  56.  
  57. function mineUp()
  58. turtle.dig()
  59. turtle.digUp()
  60. moveUp()
  61. end
  62.  
  63. function mineDown()
  64. turtle.dig()
  65. turtle.digDown()
  66. moveDown()
  67. end
  68.  
  69. function mineFor()
  70. turtle.dig()
  71. moveFor()
  72. end
  73.  
  74. function dropOff()
  75. print("Dropping off items..")
  76. turtle.turnRight()
  77. turtle.turnRight()
  78. for i=2,16 do
  79. turtle.select(i)
  80. turtle.drop()
  81. end
  82. turtle.turnRight()
  83. turtle.turnRight()
  84. end
  85.  
  86. function waitGrow()
  87. print("Waiting for grow..")
  88. turtle.select(1)
  89. while turtle.compare() do
  90. os.sleep(10)
  91. end
  92. print("Tree grew!")
  93. return true
  94. end
  95.  
  96. function placeSapling()
  97. turtle.select(1)
  98. if turtle.getItemCount(1) < 4 then
  99. print("Ran out of saplings.")
  100. return false
  101. else
  102. print("Planting new tree.")
  103. end
  104. moveFor()
  105. turtle.place()
  106. moveRight()
  107. turtle.place()
  108. moveBack()
  109. turtle.place()
  110. moveLeft()
  111. turtle.place()
  112. return true
  113. end
  114.  
  115. function chopTree()
  116. print("Chopping tree.")
  117. mineFor()
  118. while turtle.detect() do
  119. mineUp()
  120. end
  121. moveRight()
  122. while z ~= 0 do
  123. mineDown()
  124. end
  125. turtle.dig()
  126. moveBack()
  127. moveLeft()
  128. end
  129.  
  130. function farm()
  131. if not placeSapling() then
  132. return false
  133. end
  134. waitGrow()
  135. chopTree()
  136. dropOff()
  137. if x ~= 0 or y ~= 0 or z ~= 0 then
  138. return false
  139. end
  140. os.sleep(1)
  141. return true
  142. end
  143.  
  144. while true do
  145. if not farm() then
  146. print("Something went wrong.")
  147. return
  148. end
  149. end
Advertisement
Add Comment
Please, Sign In to add comment