Advertisement
DabDaddy6223

mineclient

Mar 7th, 2023 (edited)
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.77 KB | None | 0 0
  1. MaxTorchDistance = 14
  2. PlaceTorches = true
  3.  
  4. function getIndexOf(item)
  5.     for i = 1, 16 do
  6.         local current = turtle.getItemDetail(i, false)
  7.         if current ~= nil then
  8.             if current["name"] == item then
  9.                 return i
  10.             end
  11.         end
  12.     end
  13.  
  14.     return -1
  15. end
  16.  
  17. function move(distance)
  18.     local moved = 0
  19.    
  20.     -- Move out to desired position
  21.     while moved < distance do
  22.         local indexOfTorches = getIndexOf("minecraft:torch")
  23.         if indexOfTorches == -1 then
  24.             PlaceTorches = false
  25.         end
  26.  
  27.         turtle.dig()
  28.         turtle.forward()
  29.         turtle.digUp()
  30.         turtle.digDown()
  31.  
  32.         if PlaceTorches then
  33.             if moved % MaxTorchDistance == 0 then
  34.                 turtle.placeDown()
  35.             end
  36.         end
  37.  
  38.         moved = moved + 1
  39.     end
  40.  
  41.     -- Turn back around
  42.     turtle.turnLeft()
  43.     turtle.turnLeft()
  44.    
  45.     -- Return to starting position
  46.     while distance > 0 do
  47.         turtle.forward()
  48.         distance = distance - 1
  49.     end
  50.  
  51.     -- Turn around and move out of the way
  52.     turtle.up()
  53.     turtle.turnLeft()
  54.     turtle.turnLeft()
  55. end
  56.  
  57. function prepare()
  58.     turtle.down()
  59.  
  60.     local indexOfTorches = getIndexOf("minecraft:torch")
  61.     if indexOfTorches == -1 then
  62.         print("No torches found!")
  63.         return
  64.     end
  65.  
  66.     if indexOfTorches ~= 1 then
  67.         turtle.select(indexOfTorches)
  68.         turtle.transferTo(1)
  69.     end
  70. end
  71.  
  72. function main()
  73.     turtle.refuel()
  74.  
  75.     local modem = peripheral.find("modem", rednet.open)
  76.     rednet.broadcast("turtle", "turtnettoserver")
  77.  
  78.     local id, message = rednet.receive("turtnettoclient")
  79.     local distance = tonumber(message)
  80.  
  81.     prepare()
  82.     move(distance)
  83. end
  84.  
  85. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement