From c92c870297749dbf5684ec306e5b0c90d503fb76 Mon Sep 17 00:00:00 2001 From: masterdraco Date: Wed, 30 Sep 2026 18:16:19 +0200 Subject: [PATCH] =?UTF-8?q?fix(fl=C3=A5de):=20korte=20maskinnavne=20i=20pu?= =?UTF-8?q?ljelisten=20(v1.61.10.0)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGELOG.md | 1 + FS25_ADSmartPickup/adFlowView.lua | 9 +++++++++ FS25_ADSmartPickup/gui/SmartPickupFieldTab.lua | 8 ++++---- FS25_ADSmartPickup/modDesc.xml | 2 +- 4 files changed, 15 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 653fd63..743a279 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.61 — Produktionskæder +- **1.61.10** Markflådens puljeliste viser korte maskinnavne (uden " Unrealistic" og parenteser som "(+ Custom Crops)"), så lange linjer ikke ombrydes med traktorens nummer alene på næste linje. - **1.61.9** *Sælg fra* i udkørselsflows har valget **Altid (uanset pris)** øverst: flowet sælger, så snart der er noget at køre med, uden at vente på en god pris. Resumé og status viser *sælg altid*. - **1.61.8** Kæderne regner **læs i vogne og høstertanke** med som lager (afgrøder og markvarer), og der kommer ingen forslag eller automatiske markskift for en afgrøde, mens den høstes. Klik på en varelinje i fanen **Kæder** åbner flowet, der kører varen, i redigeringsvinduet (så en stoppet kæde kan få traktor og vogn). - **1.61.7** Kædelinjen viser *Gård* (uden klik) ved slutprodukter, gården selv bruger (fx ensilage, TMR, roesnitter), og *Sælg*/*Behold* kun ved varer, der faktisk kan sælges straks. diff --git a/FS25_ADSmartPickup/adFlowView.lua b/FS25_ADSmartPickup/adFlowView.lua index 8a05287..c062cba 100644 --- a/FS25_ADSmartPickup/adFlowView.lua +++ b/FS25_ADSmartPickup/adFlowView.lua @@ -74,6 +74,15 @@ function ADFlowView.boardGroups(runs) return groups end +-- Kort maskinnavn til lister: " Unrealistic" og parenteser som "(+ Custom Crops)" fjernes (lange navne blev ombrudt +-- med traktorens nummer alene på næste linje, in-game 30/9). Bliver intet tilbage, bruges det fulde navn. +function ADFlowView.shortVehicleName(name) + local full = tostring(name or "") + local short = full:gsub("%s*%b()", ""):gsub("%s+[Uu]nrealistic", ""):gsub("^%s+", ""):gsub("%s+$", "") + if short == "" then return full end + return short +end + -- Kædeflows uden traktor foldes sammen i listen (de venter på en ledig traktor/vogn). -> active, idle function ADFlowView.splitIdle(runs) local active, idle = {}, {} diff --git a/FS25_ADSmartPickup/gui/SmartPickupFieldTab.lua b/FS25_ADSmartPickup/gui/SmartPickupFieldTab.lua index 5874365..aa26855 100644 --- a/FS25_ADSmartPickup/gui/SmartPickupFieldTab.lua +++ b/FS25_ADSmartPickup/gui/SmartPickupFieldTab.lua @@ -307,16 +307,16 @@ function SmartPickupFrame:fillPoolRows(adEnv) self:addTextRow(i18n:getText("spu_pool_section_tractors")) for _, tractor in ipairs(tractors) do local row = self:addRow(self.vehiclePrefab, {kind = "fleetVehicle", vehicleId = tractor.id}) - local status = string.format(i18n:getText("spu_pool_tractor_" .. tractor.status), tostring(tractor.arg)) + local status = string.format(i18n:getText("spu_pool_tractor_" .. tractor.status), ADFlowView.shortVehicleName(tractor.arg)) local hp = tractor.hp ~= nil and string.format(", %.0f hk", tractor.hp) or "" - row:getDescendantByName("title"):setText(string.format(" %s%s — %s", tostring(tractor.label), hp, status)) + row:getDescendantByName("title"):setText(string.format(" %s%s — %s", ADFlowView.shortVehicleName(tractor.label), hp, status)) row:getDescendantByName("option"):setState(tractor.enabled and SmartPickupFrame.STATE_ON or SmartPickupFrame.STATE_OFF, false) end if #tractors == 0 then self:addTextRow(" " .. i18n:getText("spu_pool_noTractors")) end self:addTextRow(i18n:getText("spu_pool_section_implements")) for _, implement in ipairs(implements) do - local status = string.format(i18n:getText("spu_pool_implement_" .. implement.status), tostring(implement.arg)) - self:addTextRow(string.format(" %s — %s: %s", tostring(implement.label), self:roleText(implement.role), status)) + local status = string.format(i18n:getText("spu_pool_implement_" .. implement.status), ADFlowView.shortVehicleName(implement.arg)) + self:addTextRow(string.format(" %s — %s: %s", ADFlowView.shortVehicleName(implement.label), self:roleText(implement.role), status)) end if #implements == 0 then self:addTextRow(" " .. i18n:getText("spu_pool_noImplements")) end end diff --git a/FS25_ADSmartPickup/modDesc.xml b/FS25_ADSmartPickup/modDesc.xml index 5b8f2d0..1f74be0 100644 --- a/FS25_ADSmartPickup/modDesc.xml +++ b/FS25_ADSmartPickup/modDesc.xml @@ -1,7 +1,7 @@ masterdraco - 1.61.9.0 + 1.61.10.0 <en>AD Smart Pickup</en>