Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- local tArgs = {...}
- if #tArgs == 3 then
- local x = tonumber(tArgs[1])
- local y = tonumber(tArgs[2])
- local z = tonumber(tArgs[3])
- local looper = 2
- local fuel = ((y*x+2)*z)/80
- function enderplace()
- while not turtle.place() do
- turtle.dig()
- end
- end
- function infFuel()
- turtle.select(16)
- enderplace()
- turtle.select(1)
- turtle.suck(64)
- turtle.refuel()
- turtle.select(16)
- turtle.dig()
- turtle.select(1)
- end
- function feedme()
- turtle.select(16)
- enderplace()
- turtle.select(1)
- turtle.suck(fuel)
- turtle.refuel(fuel)
- turtle.select(16)
- turtle.dig()
- turtle.select(1)
- end
- function empty()
- for i = 1 , 14 do
- turtle.select(i)
- turtle.drop()
- end
- end
- function tunnel()
- for i = 1 , x-1 do
- turtle.dig()
- while not turtle.forward() do
- turtle.dig()
- end
- end
- end
- function turn()
- turtle.digUp()
- turtle.turnLeft()
- turtle.turnLeft()
- while not turtle.up() do
- turtle.digUp()
- end
- end
- function turnDown()
- turtle.digDown()
- turtle.down()
- turtle.turnLeft()
- turtle.turnLeft()
- end
- function transition()
- turtle.turnRight()
- while not turtle.forward() do
- turtle.dig()
- end
- end
- function infEven()
- print("infeven")
- while looper == 2 do
- infFuel()
- for i = 1 , 28 do
- if turtle.getItemCount(10) == 0 then
- turtle.turnRight()
- for i = 1 , y-1 do
- tunnel()
- turn()
- end
- tunnel()
- turtle.turnRight()
- turtle.dig()
- turtle.forward()
- turtle.turnRight()
- for i = 1 , y-1 do
- tunnel()
- turnDown()
- end
- tunnel()
- transition()
- else
- turtle.dig()
- turtle.select(15)
- enderplace()
- empty()
- turtle.select(15)
- turtle.dig()
- turtle.select(1)
- end
- end
- end
- end
- function infOdd()
- print("infodd")
- while looper==2 do
- infFuel()
- for i = 1 , 28 do
- if turtle.getItemCount(10) == 0 then
- turtle.turnRight()
- for i = 1 , y-1 do
- tunnel()
- turn()
- end
- tunnel()
- turtle.turnLeft()
- turtle.dig()
- turtle.forward()
- turtle.turnLeft()
- for i = 1 , y-1 do
- tunnel()
- turnDown()
- end
- tunnel()
- transition()
- else
- turtle.dig()
- turtle.select(15)
- enderplace()
- empty()
- turtle.select(15)
- turtle.dig()
- turtle.select(1)
- end
- end
- end
- end
- function limitEven()
- print("limiteven")
- feedme()
- for i = 1 , z/2 do
- if turtle.getItemCount(10) == 0 then
- turtle.turnRight()
- for i = 1 , y-1 do
- tunnel()
- turn()
- end
- tunnel()
- turtle.turnRight()
- turtle.dig()
- turtle.forward()
- turtle.turnRight()
- for i = 1 , y-1 do
- tunnel()
- turnDown()
- end
- tunnel()
- transition()
- else
- turtle.dig()
- turtle.select(15)
- enderplace()
- empty()
- turtle.select(15)
- turtle.dig()
- turtle.select(1)
- end
- end
- end
- function limitOdd()
- print("limitodd")
- feedme()
- for i = 1 , z/2 do
- if turtle.getItemCount(10) == 0 then
- turtle.turnRight()
- for i = 1 , y-1 do
- tunnel()
- turn()
- end
- tunnel()
- turtle.turnLeft()
- turtle.dig()
- turtle.forward()
- turtle.turnLeft()
- for i = 1 , y-1 do
- tunnel()
- turnDown()
- end
- tunnel()
- transition()
- else
- turtle.dig()
- turtle.select(15)
- enderplace()
- empty()
- turtle.select(15)
- turtle.dig()
- turtle.select(1)
- end
- end
- end
- -- main program starts here
- if z==0 then
- if math.fmod(y,2) == 0 then
- infEven()
- else
- infOdd()
- end
- else
- if math.fmod(y,2) == 0 then
- limitEven()
- else
- limitOdd()
- end
- end
- else
- print("GIMME 3 NUMBERS NOOB")
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement