Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local deep = 0
- local fuelNeeded = deep
- local tArgs = { ... }
- function surface()
- while deep > 0 do
- if turtle.up() then
- deep = deep - 1
- for i=2,16 do
- if turtle.getItemCount(i) > 0 then
- turtle.select(i)
- local aok = true
- local b = 0
- while aok do
- if turtle.placeDown() then
- aok = false
- else
- b =b + 1
- end
- if b > 50 then
- aok = false
- end
- end
- break
- end
- end
- turtle.select(1)
- else
- local bm = 0
- while turtle.getFuelLevel < 80 do
- print("Turtle is refueling...")
- turtle.select(1)
- turtle.refuel(1)
- bm = bm + 1
- if bm > 10 then
- break
- end
- end
- end
- end
- end
- function dig()
- if turtle.digDown() then
- if not turtle.down() then
- local t = false
- for i=0,40 do
- if turtle.down() then
- t = true
- break
- end
- end
- if not t then
- print("Turtle is stuck...")
- return
- end
- end
- end
- end
- function run(limit)
- local ok = true
- while ok do
- fuelNeeded = deep
- fuelNeeded = fuelNeeded + 80
- if turtle.getFuelLevel() < fuelNeeded then
- turtle.select(1)
- if turtle.getItemCount(1) > 0 then
- turtle.refuel(1)
- else
- surface()
- ok = false
- error("Ran short of fuel")
- end
- else
- if deep > tonumber(limit) then
- ok = false
- surface()
- else
- dig()
- end
- end
- end
- end
- if #tArgs > 0 then
- run(tonumber(tArgs[0]))
- else
- run(256)
- end
Advertisement
Add Comment
Please, Sign In to add comment