fix(aflæsning): tipvogn skiftes til en tip-side AD må aflæsse fra

EDK 650 Unrealistic har kun allowAIDischarge på bagudtip; på venstre/højre/
kornluge åbnede AD aflæsningen, men intet løb ud (Chicken Food 2 786.712 l
hvede ved Farma med plads; Disponibel Vogn 3 fuld af løg). CP-genstart logger
kun ved ændring (v1.60.16.0).
This commit is contained in:
2026-09-29 23:23:20 +02:00
parent 13e5dbf188
commit 784144cd4e
5 changed files with 81 additions and 2 deletions
+12
View File
@@ -426,6 +426,9 @@ function ADUnloadWait.getClaims(adEnv)
return ADWaitPool.getClaims(adEnv)
end
ADUnloadWait.TIP_CHECK_MS = 2000
local tipChecked = setmetatable({}, {__mode = "k"})
function ADUnloadWait.install(adEnv)
local task, autoDrive = adEnv.UnloadAtDestinationTask, adEnv.AutoDrive
if isInstalled or task == nil or task.update == nil or autoDrive == nil or autoDrive.getSetting == nil then
@@ -438,6 +441,15 @@ function ADUnloadWait.install(adEnv)
local originalUpdate, originalFinished, originalGetSetting = task.update, task.finished, autoDrive.getSetting
task.update = function(self, dt)
-- alle aflæsningsture (også udkørsel og tømning): tipvognen på en side AD må aflæsse fra (EDK 650, 29/9)
if ADTipSide ~= nil and self.vehicle ~= nil then
local now = g_time or 0
if (tipChecked[self.vehicle] or -math.huge) + ADUnloadWait.TIP_CHECK_MS <= now then
tipChecked[self.vehicle] = now
local okTip, errTip = pcall(ADTipSide.ensure, self.vehicle)
if not okTip then Logging.warning(ADUnloadWait.LOG_PREFIX .. "tip-side: %s", tostring(errTip)) end
end
end
local ok, err = pcall(ADUnloadWait.beforeUpdate, adEnv, self, dt)
if not ok then
Logging.warning(ADUnloadWait.LOG_PREFIX .. "fejl i Wait-punkt-logik, AutoDrive fortsætter selv: %s", tostring(err))