Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local tArgs = {...}
- if #tArgs <= 1 then
- print( "Usage: do <direction> <distance> ..." )
- return
- end
- local tHandlers = {
- ["forward"] = turtle.forward,
- ["forwards"] = turtle.forward,
- ["f"] = turtle.forward,
- ["fd"] = turtle.forward,
- ["backward"] = turtle.back,
- ["backwards"] = turtle.back,
- ["bd"] = turtle.back,
- ["b"] = turtle.back,
- ["up"] = turtle.up,
- ["u"] = turtle.up,
- ["down"] = turtle.down,
- ["dn"] = turtle.down,
- ["d"] = turtle.down,
- ["left"] = turtle.turnLeft,
- ["lt"] = turtle.turnLeft,
- ["tl"] = turtle.turnLeft,
- ["l"] = turtle.turnLeft,
- ["right"] = turtle.turnRight,
- ["rt"] = turtle.turnRight,
- ["tr"] = turtle.turnRight,
- ["r"] = turtle.turnRight,
- ["dig"] = turtle.dig,
- ["df"] = turtle.dig,
- ["digdown"] = turtle.digDown,
- ["dd"] = turtle.digDown,
- ["digup"] = turtle.digUp,
- ["du"] = turtle.digUp,
- }
- local nArg = 1
- while nArg <= #tArgs do
- local sDirection = tArgs[nArg]
- local nDistance = 1
- if nArg < #tArgs then
- local num = tonumber( tArgs[nArg + 1] )
- if num then
- nDistance = num
- nArg = nArg + 1
- end
- end
- nArg = nArg + 1
- local fnHandler = tHandlers[string.lower(sDirection)]
- if fnHandler then
- while nDistance > 0 do
- if fnHandler() then
- nDistance = nDistance - 1
- elseif turtle.getFuelLevel() == 0 then
- print( "Out of fuel" )
- return
- else
- sleep(0.5)
- end
- end
- else
- print( "No such direction: "..sDirection )
- print( "Try: forward, back, up, down" )
- return
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement