Advertisement
Birog

farm

Sep 7th, 2013
50
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.79 KB | None | 0 0
  1. local function refuel()
  2. local fuelLevel = turtle.getFuelLevel()
  3. if fuelLevel == "unlimited" or fuelLevel > 20 then
  4. return
  5. end
  6.  
  7. local function tryRefuel()
  8. for n=1,16 do
  9. if turtle.getItemCount(n) > 0 then
  10. turtle.select(n)
  11. if turtle.refuel(1) then
  12. turtle.select(1)
  13. return true
  14. end
  15. end
  16. end
  17. turtle.select(1)
  18. return false
  19. end
  20.  
  21. if not tryRefuel() then
  22. print( "Add more fuel to continue." )
  23. while not tryRefuel() do
  24. sleep(1)
  25. end
  26. print( "Resuming Farming." )
  27. end
  28. end
  29.  
  30. local function move()
  31. refuel()
  32. turtle.digDown()
  33. turtle.placeDown()
  34. while not turtle.forward() do
  35. if turtle.detect() then
  36. if not tryDig() then
  37. return false
  38. end
  39. elseif turtle.attack() then
  40. collect()
  41. else
  42. sleep( 0.5 )
  43. end
  44. end
  45. return true
  46. end
  47.  
  48. local function move2()
  49. refuel()
  50. while not turtle.forward() do
  51. if turtle.detect() then
  52. if not tryDig() then
  53. return false
  54. end
  55. elseif turtle.attack() then
  56. collect()
  57. else
  58. sleep( 0.5 )
  59. end
  60. end
  61. return true
  62. end
  63. end
  64.  
  65. local function plow()
  66. while not turtle.up() do
  67. if turtle.detect() then
  68. if not tryDig() then
  69. return false
  70. end
  71. else
  72. sleep( 0.5 )
  73. end
  74. end
  75. move2()
  76. for o = 1,laenge do
  77. for i = 1,breite do
  78. move()
  79. end
  80. turtle.turnRight()
  81. move()
  82. turtle.turnRight()
  83. move()
  84. for i = 1,breite do
  85. move()
  86. end
  87. turtle.turnLeft()
  88. move2()
  89. turtle.turnLeft()
  90. move2()
  91. end
  92. for i = 1,breite do
  93. move()
  94. end
  95. move()
  96. while not turtle.down() do
  97. if turtle.detect() then
  98. if not tryDigDown() then
  99. return false
  100. end
  101. else
  102. sleep( 0.5 )
  103. end
  104. end
  105. end
  106. turtle.turnLeft()
  107. turtle.turnLeft()
  108. end
  109.  
  110. local iRepeat = 0
  111. local iMin = 30
  112. local iCount = 0
  113. local spacer = ""
  114. while true do
  115. term.clear()
  116. term.setCursorPos(1,4)
  117. print("Fuel Remaning : "..tostring(turtle.getFuelLevel()))
  118. term.setCursorPos(1,1)
  119. iRepeat = iRepeat+1
  120. print("plowing :"..iRepeat)
  121. plow()
  122. term.setCursorPos(1,4)
  123. print("Fuel Remaning : "..tostring(turtle.getFuelLevel()))
  124. iCount = iMin
  125. while true do
  126. iCount = iCount-1
  127. term.setCursorPos(1,2)
  128. term.clearLine()
  129. print("sleeping "..iMin.." minuites")
  130. for i = 59,0,-1 do
  131. sleep(1)
  132. term.setCursorPos(1,3)
  133. term.clearLine()
  134. if i < 10 then
  135. spacer = "0"
  136. else
  137. spacer = ""
  138. end
  139. write("To go "..iCount..":"..spacer..i)
  140. end
  141. if iCount == 0 then
  142. break
  143. end
  144. end
  145. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement