Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local tArgs = { ... }
- local depth = 0
- local xPos,zPos = 0,0
- local xDir,zDir = 0,1
- local goTo
- local function turnLeft()
- turtle.turnLeft()
- xDir, zDir = -zDir, xDir
- end
- local function turnRight()
- turtle.turnRight()
- xDir, zDir = zDir, -xDir
- end
- function goTo( x, y, z, xd, zd )
- while depth > y do
- if turtle.up() then
- depth = depth - 1
- else
- turtle.digUp()
- end
- end
- if xPos > x then
- while xDir ~= -1 do
- turnLeft()
- end
- while xPos > x do
- if turtle.forward() then
- xPos = xPos - 1
- else
- turtle.dig()
- end
- end
- elseif xPos < x then
- while xDir ~= 1 do
- turnLeft()
- end
- while xPos < x do
- if turtle.forward() then
- xPos = xPos + 1
- else
- turtle.dig()
- end
- end
- end
- if zPos > z then
- while zDir ~= -1 do
- turnLeft()
- end
- while zPos > z do
- if turtle.forward() then
- zPos = zPos - 1
- else
- turtle.dig()
- end
- end
- elseif zPos < z then
- while zDir ~= 1 do
- turnLeft()
- end
- while zPos < z do
- if turtle.forward() then
- zPos = zPos + 1
- else
- turtle.dig()
- end
- end
- end
- while depth < y do
- if turtle.down() then
- depth = depth + 1
- else
- turtle.digDown()
- end
- end
- if zd ~= xd then
- while zDir ~= zd or xDir ~= xd do
- turnLeft()
- end
- end
- end
- -- start --
- goTo(tonumber(tArgs[1]), tonumber(tArgs[2]), tonumber(tArgs[3]), tonumber(tArgs[4]), tonumber(tArgs[5]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement