Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Session Persistance
- if(not fs.exists('startup')) then
- local file = io.open('startup', 'w')
- file:write("shell.run(\'placer\')")
- file:close()
- end
- -- Functions
- function refuel(fuel)
- if(turtle.getFuelLevel() >= fuel) then
- return true
- end
- print('Refueling')
- turtle.select(9)
- while(not turtle.placeUp()) do
- turtle.digUp()
- turtle.attackUp()
- end
- turtle.select(16)
- while(not turtle.suckUp()) do
- sleep('No fuel found. Sleeping.', 10)
- end
- turtle.refuel(64)
- turtle.select(9)
- turtle.digUp()
- if(turtle.getFuelLevel() <= fuel) then
- sleep('Refueling failed!', 10)
- dump()
- refuel(200)
- end
- end
- -- Refuel & Variables
- refuel(500)
- all = 0
- -- Endless Placing Process
- while(true) do
- -- Fill the turtle with materials
- if turtle.getItemCount(1) == 0 then
- print('Obtaining Destination Chests for Slot 1')
- turtle.select(6)
- while(not turtle.placeUp()) do
- turtle.digUp()
- turtle.attackUp()
- end
- turtle.select(1)
- while(not turtle.suckUp()) do
- print("No Chests found. Sleeping.")
- sleep(10)
- end
- turtle.select(6)
- turtle.digUp()
- end
- if turtle.getItemCount(2) == 0 then
- print('Obtaining Fuel Chests for Slot 2')
- turtle.select(7)
- while(not turtle.placeUp()) do
- turtle.digUp()
- turtle.attackUp()
- end
- turtle.select(2)
- while(not turtle.suckUp()) do
- print("No Chests found. Sleeping.")
- sleep(10)
- end
- turtle.select(7)
- turtle.digUp()
- end
- if turtle.getItemCount(3) == 0 then
- print('Obtaining Turtles for Slot 3')
- turtle.select(8)
- while(not turtle.placeUp()) do
- turtle.digUp()
- turtle.attackUp()
- end
- turtle.select(3)
- while(not turtle.suckUp()) do
- print("No Turtles found. Sleeping.")
- sleep(10)
- end
- print("Error4")
- turtle.select(8)
- turtle.digUp()
- end
- -- Check how much turtles are available
- x = turtle.getItemCount(1)
- y = turtle.getItemCount(2)
- z = turtle.getItemCount(3)
- if (x>y) then
- if (y>z) then
- turtles = z
- else turtles = y
- end
- else
- if (x>z) then
- turtles = z
- else turtles = x
- end
- end
- -- Place them Turtles
- for i = 1,turtles do
- -- Place a Turtle & load it
- turtle.turnLeft()
- turtle.select(3)
- turtle.place()
- turtle.select(1)
- turtle.drop(1)
- turtle.select(2)
- turtle.drop(1)
- turtle.turnRight()
- -- Place the Drive & load it
- turtle.back()
- turtle.select(4)
- turtle.place()
- turtle.select(5)
- turtle.drop(1)
- -- Start the Turtle
- turtle.up()
- turtle.forward()
- turtle.turnLeft()
- turtle.forward()
- peripheral.call("bottom", "turnOn")
- turtle.back()
- turtle.turnRight()
- turtle.back()
- turtle.down()
- -- Unload Drive & Remove it
- turtle.select(5)
- turtle.suck()
- turtle.select(4)
- turtle.dig()
- turtle.suck()
- -- Move to next turtle and refuel
- turtle.forward()
- turtle.forward()
- refuel(500)
- -- End Turtle Placing
- end
- all = all + turtles
- print('Number of Turtles placed: '..all)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement