fix(markarbejde): CP startes ved sidste punkt (eget kursus + husket waypoint) eller nærmeste punkt (påbegyndt høst/slåning) i stedet for CP's standard 'first' — F111 blev høstet forfra (v1.38.4.0)

This commit is contained in:
2026-09-27 14:43:21 +02:00
parent f1b8b64668
commit bcfa237321
5 changed files with 37 additions and 1 deletions
+12
View File
@@ -68,6 +68,18 @@ function ADFieldJobs.resumeField(x, z, role, fields)
return nil
end
-- Hvor Courseplay skal starte i kurset: "last" (eget kursus + husket waypoint = fortsæt præcis), "nearest"
-- (marken er allerede delvist høstet/slået), ellers "first". CP's eget standardvalg er "first" — også på en
-- halvt høstet mark (in-game 27/9: mejetærskeren startede F111 forfra).
-- s = {reuse, remembered, stage, standingRatio}
ADFieldJobs.PARTLY_DONE_RATIO = 0.95
function ADFieldJobs.startAtFor(s)
if s.reuse and s.remembered then return "last" end
local cropStage = s.stage == "harvesting" or s.stage == "mowing"
if cropStage and type(s.standingRatio) == "number" and s.standingRatio < ADFieldJobs.PARTLY_DONE_RATIO then return "nearest" end
return "first"
end
-- Beslutning for én mark. assignments = sæt på marken ({phase, stage, helper}); kun sæt på det aktuelle
-- trin tæller (en aflæsningsvogn på vej hjem fra høsten forstyrrer ikke kultiveringen).
-- env = {raining = bool}: vejrfølsomme trin (høst/slå/vend/riv/hø) sendes ikke ud i regn.