Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local tArgs = { ... }
- local distance = tonumber( tArgs[1] )
- local torches = tArgs[2]
- local returnside = tArgs[3]
- local traveled = 0
- local light = 0
- local fueled = 0
- local level = turtle.getFuelLevel()
- function fuelup()
- fueled = 1
- term.clear()
- term.setCursorPos(1,1)
- print("Sufficient fuel. Beginning operation")
- turtle.select(16)
- turtle.placeDown()
- end
- function strip()
- turtle.dig()
- if (light == 12) and (string.lower(torches) == "true") then
- turtle.placeDown()
- light = 0
- else
- light = light + 1
- end
- if turtle.forward() == true then
- turtle.digUp()
- turtle.digDown()
- else
- turtle.dig()
- end
- end
- if #tArgs ~= 3 or
- (tArgs[2]:lower() ~= "true" and tArgs[2]:lower() ~= "false") or
- (tArgs[3]:lower() ~= "left" and tArgs[3]:lower() ~= "right" and tArgs[3]:lower() ~= "none") then
- print( "Usage: <length> <torchesPlaced> <sideReturned>" )
- print( "Example: 50 true left" )
- return
- end
- turtle.refuel()
- while true do
- if level >= (distance*2 +1) and (fueled == 0) then
- fuelup()
- elseif level <= (distance*2 +1) and (fueled == 0) then
- term.clear()
- term.setCursorPos(1,1)
- repeat
- turtle.refuel()
- level = turtle.getFuelLevel()
- print("Fuel level: "..level )
- print("Insufficient fuel to complete operation!")
- print("Please insert more fuel.")
- term.setCursorPos(1,1)
- sleep(1)
- until level >= (distance*2 +1)
- fuelup()
- end
- if (traveled ~= distance) and (fueled == 1) then
- strip()
- traveled = traveled + 1
- elseif traveled == distance then
- term.setCursorPos(1,3)
- print("")
- print("Operation half complete. Returning.")
- turtle.placeDown()
- light = 0
- if string.lower(returnside) == "right" then
- turtle.turnRight()
- turtle.dig()
- turtle.forward()
- turtle.digUp()
- turtle.digDown()
- turtle.turnRight()
- elseif string.lower(returnside) == "left" then
- turtle.turnLeft()
- turtle.dig()
- turtle.forward()
- turtle.digUp()
- turtle.digDown()
- turtle.turnLeft()
- elseif string.lower(returnside) == "none" then
- print("Operation complete. Terminating program.")
- break
- end
- repeat
- strip()
- traveled = traveled - 1
- until traveled == 0
- print("")
- print("Return complete. Terminating program.")
- break
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement