fix(marker): vinhøstere genkendes via spec_vineCutter (v1.60.17.0)
This commit is contained in:
@@ -8,6 +8,8 @@ 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 — "Kræver handling" → flow, menuplacering, flow-vogne i guiden
|
||||||
|
|
||||||
|
- **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).
|
||||||
- **1.60.16** Tipvogne skiftes under AD-aflæsning til en tip-side, AutoDrive må aflæsse fra (`allowAIDischarge`).
|
- **1.60.16** Tipvogne skiftes under AD-aflæsning til en tip-side, AutoDrive må aflæsse fra (`allowAIDischarge`).
|
||||||
Farmtech EDK 650 (Unrealistic) tillader kun bagudtip; stod den på venstre, højre eller kornluge, åbnede AD
|
Farmtech EDK 650 (Unrealistic) tillader kun bagudtip; stod den på venstre, højre eller kornluge, åbnede AD
|
||||||
aflæsningen, men intet løb ud, og vognen holdt med fuldt læs. CP-genstartslisten logges kun, når den ændrer sig.
|
aflæsningen, men intet løb ud, og vognen holdt med fuldt læs. CP-genstartslisten logges kun, når den ændrer sig.
|
||||||
|
|||||||
@@ -169,12 +169,43 @@ function ADCpBridge.getSpecs(vehicle)
|
|||||||
return specs
|
return specs
|
||||||
end
|
end
|
||||||
|
|
||||||
-- Afgrøder høsteren kan tage (alle skærebord/optagere i kæden). nil = ikke en høster.
|
-- Vinhøster (fx Grégoire GL86): afgrøden vælges i konfigurationen og står i spec_vineCutter, ikke i spec_cutter
|
||||||
|
-- (in-game 29/9: F22 hvide druer "none can do it" — moddet så aldrig vinhøstere som høstere).
|
||||||
|
function ADCpBridge.vineFruitSet(spec)
|
||||||
|
local fruits = {}
|
||||||
|
if spec == nil then return fruits end
|
||||||
|
for _, key in ipairs({"fruitTypeIndex", "fruitType"}) do
|
||||||
|
if type(spec[key]) == "number" then fruits[spec[key]] = true end
|
||||||
|
end
|
||||||
|
if type(spec.fruitTypes) == "table" then
|
||||||
|
for key, value in pairs(spec.fruitTypes) do
|
||||||
|
if type(value) == "number" then fruits[value] = true
|
||||||
|
elseif value == true and type(key) == "number" then fruits[key] = true end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return fruits
|
||||||
|
end
|
||||||
|
|
||||||
|
local vineLogged = setmetatable({}, {__mode = "k"})
|
||||||
|
|
||||||
|
-- Afgrøder høsteren kan tage (alle skærebord/optagere/vinhøstere i kæden). nil = ikke en høster.
|
||||||
function ADCpBridge.getHarvestFruits(vehicle)
|
function ADCpBridge.getHarvestFruits(vehicle)
|
||||||
if vehicle.spec_combine == nil then return nil end
|
if vehicle.spec_combine == nil then return nil end
|
||||||
local fruits = {}
|
local fruits = {}
|
||||||
for _, object in ipairs(collect(vehicle)) do
|
for _, object in ipairs(collect(vehicle)) do
|
||||||
for fruit in pairs(ADCpBridge.harvestFruitSet(object.spec_cutter)) do fruits[fruit] = true end
|
for fruit in pairs(ADCpBridge.harvestFruitSet(object.spec_cutter)) do fruits[fruit] = true end
|
||||||
|
if object.spec_vineCutter ~= nil then
|
||||||
|
local vine = ADCpBridge.vineFruitSet(object.spec_vineCutter)
|
||||||
|
for fruit in pairs(vine) do fruits[fruit] = true end
|
||||||
|
if next(vine) == nil and not vineLogged[object] then
|
||||||
|
-- ukendt feltnavn i denne spilversion: vis nøglerne, så reglen kan rettes
|
||||||
|
vineLogged[object] = true
|
||||||
|
local keys = {}
|
||||||
|
for key, value in pairs(object.spec_vineCutter) do table.insert(keys, tostring(key) .. "=" .. type(value)) end
|
||||||
|
table.sort(keys)
|
||||||
|
Logging.info("ADSmartPickup: vinhøster uden afgrøde fundet — spec_vineCutter: %s", table.concat(keys, ", "))
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
return fruits
|
return fruits
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
<modDesc descVersion="107">
|
<modDesc descVersion="107">
|
||||||
<author>masterdraco</author>
|
<author>masterdraco</author>
|
||||||
<version>1.60.16.0</version>
|
<version>1.60.17.0</version>
|
||||||
<title>
|
<title>
|
||||||
<en>AD Smart Pickup</en>
|
<en>AD Smart Pickup</en>
|
||||||
</title>
|
</title>
|
||||||
|
|||||||
Reference in New Issue
Block a user