This commit is contained in:
Dominic Zimmer 2020-07-05 03:39:21 +02:00
parent 477efa4ff6
commit e077be9e95

View File

@ -194,25 +194,53 @@ function moveSafeForward()
moveSafe(turtle.forward, turtle.inspect, noop) moveSafe(turtle.forward, turtle.inspect, noop)
end end
function goToBarrel() function goToBarrel(path)
moveSafe(turtle.forward, turtle.inspect, noop) if path == 0 then
turtle.turnRight() turtle.turnLeft()
moveSafe(turtle.forward, turtle.inspect, noop) moveSafe(turtle.forward, turtle.inspect, noop)
turtle.turnLeft() turtle.turnRight()
moveSafe(turtle.forward, turtle.inspect, noop) moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.forward, turtle.inspect, noop) moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.forward, turtle.inspect, noop) moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.down, turtle.inspectDown, noop) moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.forward, turtle.inspect, noop)
turtle.turnRight()
moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.down, turtle.inspectDown, noop)
else
moveSafe(turtle.forward, turtle.inspect, noop)
turtle.turnRight()
moveSafe(turtle.forward, turtle.inspect, noop)
turtle.turnLeft()
moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.down, turtle.inspectDown, noop)
turtle.turnRight()
end
end
function leaveBarrel(path)
if path == 0 then
moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.forward, turtle.inspect, noop)
turtle.turnRight()
moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.forward, turtle.inspect, noop)
turtle.turnRight()
else
moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.forward, turtle.inspect, noop)
moveSafe(turtle.forward, turtle.inspect, noop)
turtle.turnRight()
moveSafe(turtle.forward, turtle.inspect, noop)
turtle.turnRight()
end
end end
function reportDuty(id) function reportDuty(id)
turtle.turnRight()
moveSafeForward()
moveSafeForward()
moveSafeForward()
turtle.turnRight()
moveSafeForward()
turtle.turnRight()
moveSafe(turtle.down, turtle.inspectDown, noop) moveSafe(turtle.down, turtle.inspectDown, noop)
moveSafe(turtle.down, turtle.inspectDown, noop) moveSafe(turtle.down, turtle.inspectDown, noop)
moveSafe(turtle.down, turtle.inspectDown, noop) moveSafe(turtle.down, turtle.inspectDown, noop)
@ -271,11 +299,10 @@ function enqueueTurtle()
end end
function doRefuel() function doRefuel()
turtle.select(1)
while turtle.getFuelLevel() < 1500 do while turtle.getFuelLevel() < 1500 do
turtle.suck(1) turtle.suck(4)
selectFuel() selectFuel()
turtle.refuel(1) turtle.refuel()
end end
end end
@ -317,14 +344,19 @@ function emptyToBarrel()
end end
while true do while true do
fuel = turtle.getFuelLevel()
thejob = waitForJob() thejob = waitForJob()
goToJob() goToJob()
x, z = ithSpot(thejob) x, z = ithSpot(thejob)
digTo(x,z) digTo(x,z)
digShaft() digShaft()
goToSpawn(x, z) goToSpawn(x, z)
goToBarrel() path = math.floor(math.random() + 0.5)
goToBarrel(path)
emptyToBarrel() emptyToBarrel()
leaveBarrel(path)
reportDuty(thejob) reportDuty(thejob)
enqueueTurtle() enqueueTurtle()
fuelconsumed = fuel - turtle.getFuelLevel()
print("Consumed "..tostring(fuelconsumed).." fuel")
end end