Advertisement
Stiepen

Mossy farm

Aug 13th, 2012
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.56 KB | None | 0 0
  1. function scheduleHomeRun()
  2.   refuelScheduled = true  
  3. end
  4.  
  5. function refuel()
  6.   if turtle.getFuelLevel == "unlimited" then return true end
  7.   if turtle.getFuelLevel() < 50 then
  8.     turtle.select(5)
  9.     turtle.refuel(1)
  10.     if turtle.getItemCount(5) == 0 then scheduleHomeRun() end
  11.   end
  12. end
  13.  
  14. function goStraight()
  15.   while turtle.detect() == false do
  16.     turtle.forward()
  17.     refuel()
  18.   end
  19. end
  20.  
  21. refuelScheduled = false
  22.  
  23. function replace()
  24.   turtle.digDown()
  25.   turtle.select(4)
  26.   turtle.placeDown()
  27.   turtle.select(3)
  28. end
  29.  
  30. function digRow()
  31.   while turtle.detect() == false do
  32.     turtle.forward()
  33.     refuel()
  34.     turtle.select(3)
  35.     if turtle.compareDown() then
  36.       replace()
  37.     end
  38.   end
  39. end
  40.  
  41. function findHome()
  42.     goStraight()
  43.     turtle.select(1)
  44.     if turtle.compare() then
  45.       turtle.turnRight()
  46.       goStraight()
  47.       turtle.turnRight()
  48.     else
  49.       turtle.turnLeft()
  50.       goStraight()
  51.       turtle.turnLeft()
  52.       turtle.turnLeft()
  53.     end
  54. end
  55.  
  56. function doRoute()
  57.   while true do
  58.     digRow()
  59.     turtle.turnRight()
  60.     turtle.forward()
  61.     refuel()
  62.     turtle.turnRight()
  63.     goStraight()
  64.     turtle.turnLeft()
  65.     turtle.forward()
  66.     refuel()
  67.     if turtle.detect() then
  68.       findHome()
  69.       turtle.turnLeft()
  70.       turtle.turnLeft()
  71.       turtle.select(3)
  72.       turtle.drop(turtle.getItemCount(3)-1)
  73.       turtle.select(4)
  74.       turtle.suck()
  75.       turtle.turnLeft()
  76.       turtle.turnLeft()
  77.     else
  78.       turtle.turnLeft()
  79.     end
  80.   end
  81. end
  82. findHome()
  83. while true do
  84.   doRoute()
  85. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement