sethxi

Turtle Brancher

Apr 14th, 2015
278
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.18 KB | None | 0 0
  1. -- declare stuff
  2.  
  3. local args = { ... }
  4.  
  5. if not args[1] then return end
  6.  
  7. -- anti gravel
  8.  
  9. local function antiGravel()
  10.   while turtle.detect() do
  11.     turtle.dig()
  12.   end
  13. end
  14.  
  15. local backTrack = 0
  16.  
  17. -- system to track movement, to return to home
  18.  
  19. local t = {
  20.   forward = function()
  21.     turtle.forward()
  22.     backTrack = backTrack + 1
  23.   end,
  24.   dig = function()
  25.     turtle.dig()
  26.     antiGravel()
  27.   end
  28. }
  29.  
  30. -- mine
  31.  
  32. if term.isColor() then term.setTextColor(colors.blue) end
  33.  
  34. print("Starting dig!")
  35.  
  36. for i = 1, args[1] - 1 do
  37.   t.dig()
  38.   turtle.up()
  39.   t.dig()
  40.   t.forward()
  41.   t.dig()
  42.   turtle.down()
  43.   t.dig()
  44.   t.forward()
  45.   if i % 3 == 0 then
  46.     turtle.turnRight()
  47.     turtle.up()
  48.     turtle.dig()
  49.     turtle.select(16)
  50.     turtle.place()
  51.     turtle.turnLeft()
  52.     turtle.down()
  53.   end
  54. end
  55.  
  56. --turn back around
  57.  
  58. print("Turning around and going home.")
  59.  
  60. for i = 1, 2 do
  61.   turtle.turnLeft()
  62. end
  63.  
  64. -- go home
  65.  
  66. local function goHome()
  67.   for i = 1, backTrack do
  68.       print(backTrack - i)
  69.       shell.run("go", "forward", backTrack)
  70.   end
  71.  
  72.   -- turn back around
  73.  
  74.   for i = 1, 2 do
  75.     turtle.turnRight()
  76.   end
  77. end
  78.  
  79. goHome()
  80.  
  81. print("Finished.")
Advertisement
Add Comment
Please, Sign In to add comment