Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function aboutFace()-- simply turns the turtle 180 degrees.
- turtle.turnLeft()
- turtle.turnLeft()
- end
- function grabFuel()-- takes fuel from chest behind turtle for autoRefuel()
- if turtle.getItemCount(16) >= 2 then
- print("No need to grab fuel!")
- else
- print("Grabbing Fuel!")
- sleep(1)
- aboutFace()
- turtle.select(16)
- turtle.suck(2)
- aboutFace()
- end
- if turtle.getItemCount(16) == 0 then
- print("Couldn't retrieve fuel from chest!")
- elseif turtle.getItemCount(16) == 1 then
- print("Only grabbed 1 fuel!")
- else
- print("Fuel grabbed!")
- end
- end
- function autoRefuel() -- Automatically refuels turtle from chest.
- turtle.select(16)
- print("Selecting slot 16 for fuel check.")
- sleep(2)
- print("Fuel level is " ..turtle.getFuelLevel().. ".")
- sleep(1)
- print("Less than 80 requires a refuel!")
- sleep(1)
- print("STANDBY...")
- sleep(1)
- if turtle.getItemCount(16) < 2 then
- grabFuel()
- end
- if turtle.getFuelLevel() < 80 and turtle.getItemCount(16) >= 2 and turtle.refuel(0) == true then
- sleep(2)
- print("Refueling")
- sleep(2)
- turtle.refuel(2)--Refuels using 2 fuel.
- print("Refueled")
- --checks fuel level and if you put 2 fuel in slot 16 if not goes to manual refuel"manRefuel()"
- elseif turtle.getFuelLevel() < 80 and turtle.getItemCount(16) < 2 then
- manRefuel()
- -- checks fuel level if not needed prints it.
- elseif turtle.getFuelLevel() >= 80 then
- print("No fuel needed.")
- end
- end
- function manRefuel()
- print("There was either no fuel in the chest,")
- print("Not enough fuel in the chest.")
- print("Or there is no chest.")
- print("Please add fuel manually to slot 16.") --Manually refuel your turtle instead.
- sleep(3)
- --checks fuel level and if selected slot is fuel or has fuel.
- --waits 10 seconds for you to add fuel
- if turtle.getFuelLevel() < 80 and turtle.refuel(0) == false then
- print("Waiting 10 seconds for fuel.")
- sleep(10)
- end
- --and trys refueling again.
- if turtle.getItemCount(16) >= 2 then
- print("Thank you. Refueling!")
- turtle.refuel(2)--Refuels using 2 fuel.
- elseif turtle.getItemCount(16) == 1 then
- print("Only 1 fuel detected!")
- sleep(1)
- print("Add 1 more within 5 seconds!")
- sleep(5)
- end
- --If you didn't add fuel to turtle, it aborts the program.
- if turtle.getFuelLevel() < 80 and turtle.getItemCount(16) < 2 then
- print("TIMES UP! Come back when you have fuel! Exiting Program!")
- sleep(1)
- exit()
- elseif turtle.getItemCount(16) == 2 then
- turtle.refuel(2)
- else print("ERROR!!")
- end
- end
- function refuel()
- if turtle.getFuelLevel() < 80 then
- print("Automatic refuel attempt.")
- sleep(2)
- autoRefuel()
- end
- if turtle.getFuelLevel() < 80 and autRefuel() == false then
- sleep(2)
- manRefuel()
- end
- if turtle.getFuelLevel() >= 80 then
- print("Fuel level is " ..turtle.getFuelLevel().. ".")
- print("No fuel needed!")
- end
- end
- function cutTree()
- turtle.select(1)
- print("Cutting down tree...")
- turtle.dig()
- turtle.forward()
- turtle.digDown()
- while turtle.detectUp() do
- turtle.digUp()
- turtle.up()
- end
- while true do
- if turtle.detectDown() then
- print("Done with tree...")
- break
- else
- turtle.down()
- end
- end
- turtle.back()
- turtle.select(1)
- turtle.place()
- print("Planting sapling...")
- turtle.digUp()
- turtle.up()
- end
- refuel()
- turtle.select(1)
- print("Planting sapling...")
- turtle.place()
- turtle.digUp()
- turtle.up()
- while true do
- if turtle.detect() then
- refuel()
- cutTree()
- else
- print("Waiting for tree to grow...")
- sleep(2)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement