fix: markørens silo er den bag traktorens næse, ikke nærmeste trigger (v1.3.0.0)
I tætte silo-rækker står markøren ved NÆSTE silos rist (næsen stopper dér, vognen holder et vogntog bagved). Nærmeste-trigger-koblingen ramte derfor nabosiloen og forskød alle 40 markører én silo: roer i silo 2 blev til '1 Silo Storage'. Koblingen bruger nu ankomstretningen fra forrige waypoint og vælger nærmeste trigger bag næsen (højst 2 m foran); ellers nærmeste trigger som før. Verificeret mod savegame: 40 markører -> 40 forskellige siloer, TMR Unload -> TMR.
This commit is contained in:
@@ -61,8 +61,13 @@ g_currentMission = {
|
||||
|
||||
-- ---- AutoDrive-mocks ----
|
||||
local markers, wayPoints = {}, {}
|
||||
local function addMarker(index, name, group, x, z)
|
||||
wayPoints[index] = {x = x, z = z}
|
||||
-- fromX/fromZ: forrige waypoint på ruten ind til markøren (giver ankomstretningen)
|
||||
local function addMarker(index, name, group, x, z, fromX, fromZ)
|
||||
wayPoints[index] = {x = x, z = z, incoming = {}}
|
||||
if fromX ~= nil then
|
||||
wayPoints[1000 + index] = {x = fromX, z = fromZ, incoming = {}}
|
||||
wayPoints[index].incoming = {1000 + index}
|
||||
end
|
||||
table.insert(markers, {id = index, markerIndex = index, name = name, group = group})
|
||||
end
|
||||
|
||||
@@ -306,6 +311,23 @@ manager:getNextPickup(loader, false)
|
||||
FS25_AutoDrive.LoadAtDestinationTask.update(task, 16)
|
||||
check("L5 AutoDrives eget valg -> rotation uberørt", task.seenRotate, RT_ONLYPICKUP)
|
||||
|
||||
-- G1: tæt silo-række, kørsel mod -x. Næsen stopper ved markøren, vognen holder et
|
||||
-- vogntog BAGVED -> markørens silo er den bag næsen, ikke den (nærmere) foran.
|
||||
resetWorld()
|
||||
addMarker(1, "1 Silo", "Siloer", 1243, 0, 1260, 0)
|
||||
addMarker(2, "2 Silo", "Siloer", 1228, 0, 1243, 0)
|
||||
table.insert(stations, makeStation(101, 1255, 1, {[HAY] = 9000}, false, {[HAY] = 9000})) -- bag markør 1
|
||||
table.insert(stations, makeStation(102, 1239, 1, {[SUGARBEET] = 5000}, false, {[SUGARBEET] = 5000})) -- foran markør 1, bag markør 2
|
||||
table.insert(stations, makeStation(103, 1224, 1, {}, false, {})) -- foran markør 2
|
||||
check("G1 roer ligger i siloen bag markør 2", manager:getNextPickup(makeDriver(markers[1], {SUGARBEET}), false), 2)
|
||||
check("G1 hø ligger i siloen bag markør 1", manager:getNextPickup(makeDriver(markers[1], {HAY}), false), 1)
|
||||
|
||||
-- G2: ingen trigger bag næsen (eller ukendt retning) -> nærmeste trigger som før
|
||||
resetWorld()
|
||||
addMarker(1, "Ensom silo", "Siloer", 100, 0, 120, 0)
|
||||
table.insert(stations, makeStation(101, 95, 1, {[HAY] = 9000}))
|
||||
check("G2 kun trigger foran -> nærmeste bruges", manager:getNextPickup(makeDriver(markers[1], {HAY}), false), 1)
|
||||
|
||||
-- L7: AD stopper -> grebet ryddes, næste opgave venter ikke på en gammel silo
|
||||
resetWorld()
|
||||
addMarker(1, "Silo 1", "Andet", 0, 0); table.insert(stations, makeStation(101, 0, 15, {[HAY] = 5000}))
|
||||
|
||||
Reference in New Issue
Block a user