Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --[[
- More advanced fuel checking program.
- ]]
- local count = 0
- local refueled = false
- print("My fuel level is: " .. tostring(turtle.getFuelLevel()))
- print("Press E to exit")
- print("Press L to refuel using lava")
- print("Press C to refuel using coal")
- while not refueled do
- local event, key = os.pullEvent("char")
- if key == "e" then
- print("Exiting script...")
- sleep(.5)
- break
- elseif key == "l" then
- if turtle.getFuelLimit() ~= "unlimited" then --Figure out how many buckets are needed
- count = (turtle.getFuelLimit() - turtle.getFuelLevel()) / 1000
- print("I need " .. tostring(count) .. " lava buckets")
- else
- print("How many buckets would you like me to collect?")
- local buckets = ""
- while true do
- local event, key = os.pullEvent("char")
- if key == "enter" then
- if buckets ~= "" then
- break
- end
- elseif tonumber(key) then
- buckets = buckets .. key
- end
- end
- count = tonumber(buckets)
- end
- turtle.select(1)
- while true do
- print("Place a bucket in slot 1, then press any key.")
- local event, key = os.pullEvent("char")
- if turtle.getItemCount() ~= 0 then
- local data = turtle.getItemDetail()
- if data.name == "minecraft:bucket" then --Check if the item is a bucket.
- if data.count == 1 then
- break
- else
- print("Too many buckets!")
- end
- else
- print("Not a bucket!")
- end
- end
- sleep(.5)
- end
- print("Refueling...")
- for i = 1, 2 do
- for j = 1, (count/2 + 1 - math.fmod(count,2)) do --Round to the nearest whole number
- turtle.forward()
- turtle.placeDown()
- turtle.refuel()
- end
- turtle.turnRight()
- turtle.forward()
- turtle.placeDown()
- turtle.refuel()
- turtle.turnRight()
- end
- refueled = true
- elseif key == "c" then
- if turtle.getFuelLimit() ~= "unlimited" then
- local a = turtle.getFuelLimit() - turtle.getFuelLevel()
- print("I need " .. tostring(a / 80) .. " pieces of coal")
- end
- print("Place fuel in my inventory, then press any key.")
- local event, key = os.pullEvent("char")
- for i = 1,16 do
- turtle.select(i)
- turtle.refuel()
- end
- turtle.select(1)
- refueled = true
- else
- sleep(.5)
- end
- end
- if refueled then
- print("Done refueling!")
- if (turtle.getFuelLimit() ~= "unlimited") and (turtle.getFuelLevel() ~= turtle.getFuelLimit()) then
- print("My new fuel level is: " .. tostring(turtle.getFuelLevel()))
- else
- print("Fuel limit of " .. tostring(turtle.getFuelLimit()) .. " reached!")
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment