Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- turtle.refuel(1)
- local range = math.floor(math.sqrt(turtle.getFuelLevel()))
- local steps = 0
- local turn = false
- local badb = {"minecraft:air", "minecraft:water", "minecraft:lava"}
- function isBad(name)
- for i = 1, table.getn(badb), 1 do
- if badb[i] == name then
- return true
- end
- end
- return false
- end
- while turtle.getFuelLevel() > 0 do
- while turtle.dig() do
- end
- turtle.digDown()
- turtle.forward()
- local success, meta, err = turtle.inspectUp()
- if not success or isBad(meta.name) then
- turtle.placeUp()
- end
- steps = steps + 1
- if steps < range then
- turtle.turnLeft()
- success, meta = turtle.inspect()
- if not success or isBad(meta.name) then
- turtle.place()
- end
- turtle.turnRight()
- end
- if steps > (range * range) - range then
- turtle.turnRight()
- success, meta = turtle.inspect()
- if not success or isBad(meta.name) then
- turtle.place()
- end
- turtle.turnLeft()
- end
- if steps % range == 0 then
- success, meta = turtle.inspect()
- if not success or isBad(meta.name) then
- turtle.place()
- end
- if turn then
- turtle.turnLeft()
- else
- turtle.turnRight()
- end
- while turtle.dig() do
- end
- turtle.digDown()
- turtle.forward()
- if turn then
- turtle.turnLeft()
- else
- turtle.turnRight()
- end
- turn = not turn
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement