fix: læs-bytte — Wait-logik kun ved AD's aflæsningsmål; frisk rest ved bytte
This commit is contained in:
@@ -107,6 +107,12 @@ local function startWaiting(adEnv, task)
|
||||
if not vehicle.ad.drivePathModule:isTargetReached() or vehicle.ad.trailerModule:isActiveAtTrigger() then
|
||||
return
|
||||
end
|
||||
-- Efter et bytte er opgavens mål en silo, ikke AD's rigtige aflæsningsmål (anden markør);
|
||||
-- der skal AD bare læsse af som normalt, uden Wait-logik.
|
||||
local target = vehicle.ad.stateModule.getSecondMarker ~= nil and vehicle.ad.stateModule:getSecondMarker() or nil
|
||||
if target == nil or task.destinationID ~= target.id then
|
||||
return
|
||||
end
|
||||
local fillType, rest = getRestLoad(adEnv, vehicle)
|
||||
if fillType == nil or rest < ADUnloadWait.MIN_REST_LITERS then
|
||||
return
|
||||
@@ -150,6 +156,8 @@ local function updateWaiting(adEnv, task, wait, dt)
|
||||
release(vehicle)
|
||||
return
|
||||
end
|
||||
-- Friske tal til evt. bytte og til tilbage-loggen — ikke dem fra da ventningen startede.
|
||||
wait.fillType, wait.rest = fillType, rest
|
||||
local free, capacity = ADSmartPickup.getTargetFreeCapacity(adEnv, vehicle, fillType)
|
||||
if free == nil or not ADSupplyPlanner.canUnloadRest(free, rest, capacity) then
|
||||
if ADLoadSwap ~= nil then
|
||||
|
||||
Reference in New Issue
Block a user