From 4f676135acbdd22220e18fdea1916d09af8566ab Mon Sep 17 00:00:00 2001 From: masterdraco Date: Wed, 30 Sep 2026 12:34:39 +0200 Subject: [PATCH] fix(flow-vogne): husk kun redskaber med lastrum som flow-vogn (v1.60.21.0) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sell Slurry 2 havde ploven husket som gyllevogn. Manualerne: fast sæt/bundet omfatter nu også flowets vogne. --- CHANGELOG.md | 1 + FS25_ADSmartPickup/adFlowWagons.lua | 15 +++++++++++++-- FS25_ADSmartPickup/modDesc.xml | 2 +- docs/BRUGERMANUAL.md | 11 +++++++---- docs/USER_MANUAL.md | 14 +++++++++----- 5 files changed, 31 insertions(+), 12 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0a177b7..75899e0 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.21** Flow-vogne: kun et redskab med lastrum (ikke plov, kultivator eller såmaskine) huskes som flowets vogn. Før kunne en plov, der hang bag en flow-traktor, blive gemt som gyllevogn, og gyllen blev aldrig kørt. - **1.60.20** Vinhøsterens bredde: også en lille bredde fra Courseplay (under 1,5 m) erstattes af vinrækkens 3 m. - **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). diff --git a/FS25_ADSmartPickup/adFlowWagons.lua b/FS25_ADSmartPickup/adFlowWagons.lua index fa4e5dc..ee3ac15 100644 --- a/FS25_ADSmartPickup/adFlowWagons.lua +++ b/FS25_ADSmartPickup/adFlowWagons.lua @@ -23,6 +23,12 @@ function ADFlowWagons.remember(wagons, tractorId, wagonId) return copy end +-- Må redskabet bag traktoren huskes som flowets vogn? Kun noget der kan rumme last — ikke plov/kultivator (ingen +-- plads) og ikke såmaskine (frøtank). s = {capacity, isSowingMachine}. in-game 30/9: 'Sell Slurry 2' huskede ploven. +function ADFlowWagons.isRememberableWagon(s) + return (s.capacity or 0) > 0 and not s.isSowingMachine +end + -- s = {hasRear, wagonId, wagonExists, hasConnect, wagonAttached, wagonBusy} -> "start" | "fetch" | "wait" function ADFlowWagons.startAction(s) -- lånt ud af puljen (markarbejde, marksilo, på hjemtur): vent til den er fri @@ -453,11 +459,16 @@ end -- Husk vognen bag traktoren som flowets (også når flowet lige er stoppet — rememberAll ser kun kørende flows). -- in-game 29/9: Milk Store's tanke blev sat af ved Stop alt uden at være husket -> 'noTrailer' ved næste start. +local function isCargoWagon(object) + local _, capacity = ADPool.cargoOf(object) + return ADFlowWagons.isRememberableWagon({capacity = capacity, isSowingMachine = object.spec_sowingMachine ~= nil}) +end + local function rememberWagonOf(vehicle) local run = ADRunsController.getRunForVehicle(vehicle) local rear = run ~= nil and ADHitch.rearImplementsOf(vehicle) or {} local tractorId = ADRunsController.getVehicleId(vehicle) - local wagonId = rear[1] ~= nil and ADRunsController.getVehicleId(rear[1].object) or nil + local wagonId = rear[1] ~= nil and isCargoWagon(rear[1].object) and ADRunsController.getVehicleId(rear[1].object) or nil if wagonId == nil or tractorId == nil then return end local updated = ADFlowWagons.remember(run.wagons, tractorId, wagonId) if updated ~= run.wagons then @@ -615,7 +626,7 @@ local function rememberAll(adEnv) for _, vehicleId in ipairs(run.vehicleIds or {}) do local vehicle = ADRunsController.findVehicleById(adEnv, vehicleId) local rear = vehicle ~= nil and ADHitch.rearImplementsOf(vehicle) or {} - local wagonId = rear[1] ~= nil and ADRunsController.getVehicleId(rear[1].object) or nil + local wagonId = rear[1] ~= nil and isCargoWagon(rear[1].object) and ADRunsController.getVehicleId(rear[1].object) or nil if wagonId ~= nil then local updated = ADFlowWagons.remember(run.wagons, vehicleId, wagonId) if updated ~= run.wagons then diff --git a/FS25_ADSmartPickup/modDesc.xml b/FS25_ADSmartPickup/modDesc.xml index b82818a..e441228 100644 --- a/FS25_ADSmartPickup/modDesc.xml +++ b/FS25_ADSmartPickup/modDesc.xml @@ -1,7 +1,7 @@ masterdraco - 1.60.20.0 + 1.60.21.0 <en>AD Smart Pickup</en> diff --git a/docs/BRUGERMANUAL.md b/docs/BRUGERMANUAL.md index ca86b3b..5dac937 100644 --- a/docs/BRUGERMANUAL.md +++ b/docs/BRUGERMANUAL.md @@ -93,8 +93,10 @@ til tom*: den vare, der slipper op først, hentes først. **Reserve.** Det, gårdens egne stalde og fabrikker skal bruge det næste døgn. Reserven sælges aldrig. -**Sæt.** En traktor med redskab eller vogn koblet på, eller en selvkørende maskine. Et **fast sæt** er et -redskab, der ikke har en Connect-markør. Det bliver siddende og udlånes aldrig. +**Sæt.** En traktor med redskab eller vogn koblet på, eller en selvkørende maskine. Et redskab eller en +vogn er **bundet** og udlånes aldrig, når det hører til et flow (flowets traktorer og vogne, også når flowet +er stoppet), eller når det ikke har en Connect-markør (et **fast sæt**, fx en vintraktor med sit +vinredskab). **Maskinpulje.** Frakoblede redskaber og vogne med parkering og Connect-markør samt ledige traktorer uden redskab. Moden parrer dem selv, når der er brug for det. @@ -149,7 +151,8 @@ En **Connect-markør** er stedet, hvor traktoren holder for at koble et redskab - Kører du selv en traktor med AutoDrives "Kør til" til en Connect-markør, kobler moden også på. - Omdøber du en parkering, skal Connect-markøren omdøbes med. -Et redskab eller en vogn **uden** Connect-markør er et fast sæt og bliver aldrig lånt ud. +Et redskab eller en vogn **uden** Connect-markør er et fast sæt og bliver aldrig lånt ud. Det samme +gælder et flows vogne, selv om de har en Connect-markør (se [Flow-vogne](#flow-vogne)). ### Afkobling: "Afkobl" @@ -1139,7 +1142,7 @@ Moden testes løbende, og fejlrapporter er meget velkomne. | **Connect-markør** | Markøren `Connect `, hvor en traktor kobler et redskab på | | **Afkobl-markør** | Markør, hvor redskaber bag traktoren kobles af | | **Solo-traktor** | Traktor uden vogn eller redskab bagpå | -| **Fast sæt** | Redskab uden Connect-markør. Det bliver siddende og udlånes aldrig | +| **Fast sæt** | Redskab uden Connect-markør. Det bliver siddende og udlånes aldrig. Et flows vogne udlånes heller aldrig | | **Maskinpulje** | Frakoblede redskaber/vogne og ledige traktorer, som moden parrer efter behov | | **Markflåde** | De maskiner, markarbejdet må bruge | | **UAL** | Universal Autoload, mod der læsser paller automatisk | diff --git a/docs/USER_MANUAL.md b/docs/USER_MANUAL.md index 614b156..f122120 100644 --- a/docs/USER_MANUAL.md +++ b/docs/USER_MANUAL.md @@ -93,8 +93,10 @@ empty*: the good that runs out first is fetched first. **Reserve.** What the farm's own barns and factories will use in the next day. The reserve is never sold. -**Set.** A tractor with an implement or trailer attached, or a self-propelled machine. A **fixed set** is -an implement that has no Connect marker. It stays attached and is never lent out. +**Set.** A tractor with an implement or trailer attached, or a self-propelled machine. An implement or +trailer is **bound** and never lent out when it belongs to a flow (the flow's tractors and trailers, also +while the flow is stopped), or when it has no Connect marker (a **fixed set**, e.g. a vineyard tractor with +its vineyard implement). **Machine pool.** Detached implements and trailers with a parking spot and a Connect marker, plus free tractors without an implement. The mod pairs them up when needed. @@ -149,7 +151,8 @@ A **Connect marker** is where the tractor stops to hitch an implement or trailer - If you drive a tractor with AutoDrive's "Drive to" to a Connect marker yourself, the mod hitches too. - If you rename a parking spot, rename the Connect marker as well. -An implement or trailer **without** a Connect marker is a fixed set and is never lent out. +An implement or trailer **without** a Connect marker is a fixed set and is never lent out. The same goes +for a flow's trailers, even when they have a Connect marker (see [Flow trailers](#flow-trailers)). ### Detaching: "Afkobl" @@ -603,7 +606,8 @@ and while the flow is running. The machine pool is used by field work and field silos when no ready-made set is free. - **Pool implement/trailer:** detached, owned by the farm, with an AutoDrive parking spot and a Connect - marker for that parking spot. Implements without a Connect marker are fixed sets and are never lent. + marker for that parking spot, and not bound to a flow. Implements without a Connect marker are fixed sets + and are never lent. - **Pool tractor:** an ordinary tractor with nothing attached at the rear, with its own AutoDrive parking spot, on AutoDrive's road network and not driven by you. Field implements are only hitched behind tractors. Unloading trailers can also be pulled by other vehicles. @@ -1169,7 +1173,7 @@ The mod is being tested continuously, and bug reports are very welcome. | **Connect marker** | The marker `Connect `, where a tractor hitches an implement | | **Afkobl marker** | Marker where implements behind the tractor are detached | | **Solo tractor** | Tractor with no trailer or implement attached at the rear | -| **Fixed set** | Implement without a Connect marker. It stays attached and is never lent out | +| **Fixed set** | Implement without a Connect marker. It stays attached and is never lent out. A flow's trailers are never lent out either | | **Machine pool** | Detached implements/trailers and free tractors that the mod pairs up as needed | | **Field fleet** | The machines field work is allowed to use | | **UAL** | Universal Autoload, a mod that loads pallets automatically |