Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Digs a 5x5 tunnel straight forward until it runs out of fuel. Will attempt to refuel as it goes, using coal it finds
- -- Place chests in slot 16 of the turtle inventory to make it place chests and fill them as it travels
- local ChestSlot = 16
- function refuel()
- local slot = 0
- while ( turtle.getFuelLevel() < 100 and slot < 15 ) do
- slot = slot + 1
- turtle.select(slot)
- turtle.refuel(10)
- end
- turtle.select(1)
- end
- function tryForward()
- refuel()
- if ( turtle.getFuelLevel() < 100 ) then
- print "Ran out of fuel!"
- os.exit()
- end
- while ( not turtle.forward() ) do
- turtle.dig()
- os.sleep(1)
- end
- end
- function tryUp()
- refuel()
- if ( turtle.getFuelLevel() < 100 ) then
- print "Ran out of fuel!"
- os.exit()
- end
- while ( not turtle.up() ) do
- turtle.digUp()
- os.sleep(1)
- end
- end
- function tryDown()
- refuel()
- if ( turtle.getFuelLevel() < 100 ) then
- print "Ran out of fuel!"
- os.exit()
- end
- while ( not turtle.down() ) do
- turtle.digDown()
- os.sleep(1)
- end
- end
- function checkSpace()
- if ( turtle.getItemCount(12) > 0 ) then
- if ( turtle.getItemCount(ChestSlot) <= 0 ) then
- print "Ran out of space"
- os.exit()
- end
- turtle.turnLeft()
- turtle.turnLeft()
- turtle.select(ChestSlot)
- turtle.place()
- for slot = 1,15 do
- turtle.select(slot)
- turtle.drop()
- end
- turtle.turnLeft()
- turtle.turnLeft()
- end
- turtle.select(1)
- end
- function digTunnel()
- turtle.turnLeft()
- tryForward()
- tryForward()
- turtle.turnRight()
- for x=1,5 do
- for y=1,5 do
- tryUp()
- end
- for y=1,5 do
- tryDown()
- turtle.dig()
- end
- if ( x < 5 ) then
- turtle.turnRight()
- tryForward()
- turtle.turnLeft()
- end
- end
- turtle.turnLeft()
- tryForward()
- tryForward()
- turtle.turnRight()
- tryForward()
- end
- while true do
- digTunnel()
- checkSpace()
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement