Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function loadFuel(amount)
- local level = amount
- while (turtle.getFuelLevel() < level) do
- for i = 1,16 do
- turtle.select(i)
- while (turtle.refuel(1)) do
- if (turtle.getFuelLevel() > level) then
- return
- end
- end
- end
- print("More fuel required to continue.")
- print(tostring(turtle.getFuelLevel()) .. " / " ..tostring(level))
- os.sleep(0.5)
- end
- end
- function waitForward()
- loadFuel(1)
- while (not turtle.forward()) do
- print("Obstructed, Halting until clear.")
- os.sleep(0.5)
- end
- end
- function breakForward()
- loadFuel(1)
- while (not turtle.forward()) do
- turtle.dig()
- end
- end
- function turnAround()
- turtle.turnLeft()
- turtle.turnLeft()
- end
- function waitUp()
- loadFuel(1)
- while (not turtle.up()) do
- print("Obstructed, Halting until clear.")
- os.sleep(0.5)
- end
- end
- function breakUp()
- loadFuel(1)
- while (not turtle.up()) do
- turtle.digUp()
- end
- end
- function waitDown()
- loadFuel(1)
- while (not turtle.down()) do
- print("Obstructed, Halting until clear.")
- os.sleep(0.5)
- end
- end
- function breakDown()
- loadFuel(1)
- while (not turtle.down()) do
- turtle.digDown()
- end
- end
- function select()
- for i = 2, 16 do
- if (turtle.getItemCount(i) > 0) then
- turtle.select(i)
- return true
- end
- end
- return false
- end
- function waitMats()
- while (not select()) do
- print("Waiting for materials.")
- os.sleep(0.5)
- end
- end
- function turn(dir)
- if (dir == 0) then
- turtle.turnLeft()
- else
- turtle.turnRight()
- end
- end
- function line(dist)
- for i = 1,dist do
- waitMats()
- turtle.placeDown()
- if (i < dist) then
- waitForward()
- end
- end
- end
- function floor(length, width)
- local dir = 0
- for i = 1, width do
- line(length)
- if (i < width) then
- turn(dir)
- breakForward()
- turn(dir)
- dir = (dir + 1) % 2
- end
- end
- end
- function bridge(length,width)
- floor(length,width)
- if (width % 2 == 1) then
- turtle.turnLeft()
- waitForward()
- turtle.turnLeft()
- turtle.up()
- line(length)
- turtle.turnLeft()
- for i = 0, width do
- waitForward()
- end
- turtle.turnLeft()
- line(length)
- else
- turtle.turnRight()
- waitForward()
- turtle.turnRight()
- waitUp()
- line(length)
- turtle.turnRight()
- for i = 0, width do
- waitForward()
- end
- turtle.turnRight()
- line(length)
- end
- end
- function wall(length,height)
- turtle.up()
- for i = 1, height do
- line(length)
- if (i < height) then
- turtle.turnLeft()
- turtle.turnLeft()
- waitUp()
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement