From a6506fea4e5d2ed039ea0dcc6981cab337af4e8f Mon Sep 17 00:00:00 2001 From: masterdraco Date: Tue, 29 Sep 2026 23:40:08 +0200 Subject: [PATCH] =?UTF-8?q?fix(marker):=20vinh=C3=B8ster=20uden=20bredde?= =?UTF-8?q?=20f=C3=A5r=20vinr=C3=A6kkens=203=20m=20(v1.60.19.0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 1 + FS25_ADSmartPickup/adCpBridge.lua | 12 ++++++++++-- FS25_ADSmartPickup/modDesc.xml | 2 +- 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 751f2a0..f428807 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ står i [docs/BRUGERMANUAL.md](docs/BRUGERMANUAL.md) (dansk) og [docs/USER_MANUA ## 1.60 — "Kræver handling" → flow, menuplacering, flow-vogne i guiden +- **1.60.19** Vinhøster uden kendt arbejdsbredde får vinrækkens 3 m (før "bredde ukendt", og marken blev ikke startet). - **1.60.18** Vinhøsterens afgrøde læses fra `inputFruitTypeIndex` (feltnavnet i FS25). - **1.60.17** Vinhøstere (fx Grégoire GL86) genkendes som høstere af den afgrøde, de er konfigureret til (spec_vineCutter). Før fik vinmarker "ingen kan" (in-game: F22 hvide druer). diff --git a/FS25_ADSmartPickup/adCpBridge.lua b/FS25_ADSmartPickup/adCpBridge.lua index 82031bb..e7c0c05 100644 --- a/FS25_ADSmartPickup/adCpBridge.lua +++ b/FS25_ADSmartPickup/adCpBridge.lua @@ -391,11 +391,19 @@ local function courseplayWidth(vehicle) return nil end +-- Vinhøster uden AI-markører: bredden er vinrækken (3 m = Courseplays vin-gitter for druer). +ADCpBridge.VINE_ROW_WIDTH = 3 +function ADCpBridge.widthOrVine(width, hasVineCutter) + if hasVineCutter and (width or 0) < 1 then return ADCpBridge.VINE_ROW_WIDTH end + return width +end + function ADCpBridge.getWorkWidth(vehicle) local cpWidth = courseplayWidth(vehicle) if cpWidth ~= nil then return cpWidth end - local best = 0 + local best, hasVine = 0, false for _, object in ipairs(collect(vehicle)) do + if object.spec_vineCutter ~= nil then hasVine = true end local variable = variableWidth(object) if variable ~= nil then best = math.max(best, variable) @@ -405,7 +413,7 @@ function ADCpBridge.getWorkWidth(vehicle) if ok and type(width) == "number" and width > best then best = width end end end - return best + return ADCpBridge.widthOrVine(best, hasVine) end -- AutoDrive kører også som AI-job i FS25: aktiv AD er ikke Courseplay (in-game 29/9: Milk Store ved Cow Wait diff --git a/FS25_ADSmartPickup/modDesc.xml b/FS25_ADSmartPickup/modDesc.xml index c830b35..4463305 100644 --- a/FS25_ADSmartPickup/modDesc.xml +++ b/FS25_ADSmartPickup/modDesc.xml @@ -1,7 +1,7 @@ masterdraco - 1.60.18.0 + 1.60.19.0 <en>AD Smart Pickup</en>