fix(udkørsel): 'Wait at: All' vælger det ledige Wait-punkt nærmest flowets kilder, ikke nærmest traktoren (v1.57.1.0)

This commit is contained in:
2026-09-29 15:23:14 +02:00
parent 793f792f8b
commit a694d17a67
4 changed files with 29 additions and 3 deletions
+11 -1
View File
@@ -493,7 +493,17 @@ local function startHold(adEnv, vehicle, run, reasons, sourcesById)
local isReachable = function(candidate)
return ADWaitPool.hasRouteTo(adEnv, vehicle, candidate.marker.id)
end
local candidate = ADWaitPool.pickFree(adEnv, vehicle, run.waitPoolGroup, isReachable)
-- "All": nærmest flowets egne kilder, ikke nærmest traktoren (in-game 29/9: Milk Store ved sukkerroeknuseren)
local anchorX, anchorZ = nil, nil
if run.waitPoolGroup == nil then
local points = {}
for _, id in ipairs(run.sourceWayPointIds or {}) do
local wayPoint = adEnv.ADGraphManager:getWayPointById(id)
if wayPoint ~= nil then table.insert(points, {x = wayPoint.x, z = wayPoint.z}) end
end
anchorX, anchorZ = ADWaitPool.anchorOf(points)
end
local candidate = ADWaitPool.pickFree(adEnv, vehicle, run.waitPoolGroup, isReachable, anchorX, anchorZ)
local marker, source = nil, nil
if candidate ~= nil then
ADWaitPool.claim(candidate.marker.id, vehicle)
+11 -1
View File
@@ -97,8 +97,18 @@ local function otherVehiclePositions(vehicle)
return positions
end
function ADWaitPool.pickFree(adEnv, vehicle, poolGroup, isReachable)
-- Midtpunkt af punkter {x, z} (fx flowets kilde-markører) -> x, z eller nil.
function ADWaitPool.anchorOf(points)
if points == nil or #points == 0 then return nil end
local sx, sz = 0, 0
for _, point in ipairs(points) do sx, sz = sx + point.x, sz + point.z end
return sx / #points, sz / #points
end
-- anchorX/anchorZ (valgfri): vælg nærmest dette punkt i stedet for traktoren (flow med "All": nærmest kilderne).
function ADWaitPool.pickFree(adEnv, vehicle, poolGroup, isReachable, anchorX, anchorZ)
local x, z = getVehiclePosition(vehicle)
if anchorX ~= nil and anchorZ ~= nil then x, z = anchorX, anchorZ end
if x == nil then
return nil
end
+1 -1
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<modDesc descVersion="107">
<author>masterdraco</author>
<version>1.57.0.0</version>
<version>1.57.1.0</version>
<title>
<en>AD Smart Pickup</en>
</title>