fix: fane sidst i ESC-menuen (ingen omrokering), stald-foder via spec_husbandryFood/animalFoodSystem, mål = kun stalde+fabrikker, korte Wait-labels (v1.9.2.0)

This commit is contained in:
2026-09-23 00:13:58 +02:00
parent 90d86b22e9
commit 3c22eae0eb
6 changed files with 150 additions and 42 deletions
+31
View File
@@ -840,6 +840,37 @@ local eLevel, eCapacity = ADSmartPickup.getStationLevelAndCapacity(unloadStation
check("E3 niveau i målet", eLevel, 40000)
check("E3 kapacitet i målet", eCapacity, 100000)
check("E3 vare målet ikke tager -> nil", ADSmartPickup.getStationLevelAndCapacity(unloadStations[1], MILK, 1), nil)
-- E4: FS25-stald med foder-spec: foder læses fra spec_husbandryFood (fælles kapacitet),
-- fodertyper fra animalFoodSystem, halm fra spec_husbandryStraw; outputs (mælk) tages ikke
buildCowWorld()
local foodLevels = {[TMR] = 10000, [HAY] = 5000}
local fs25Barn = {
getName = function() return "FS25-kostald" end,
spec_husbandryFood = {fillLevels = foodLevels, capacity = 100000, animalTypeIndex = 7},
spec_husbandryStraw = {fillLevel = 20000, capacity = 300000},
-- staldens egen "understøtter" siger også ja til mælk (output) — må ikke blive et mål
getHusbandryIsFillTypeSupported = function(_, fillType) return fillType == MILK or fillType == STRAW or fillType == TMR end,
getHusbandryFillLevel = function(_, fillType) if fillType == STRAW then return 20000 end return 0 end,
getHusbandryCapacity = function(_, fillType) if fillType == STRAW then return 300000 end return 0 end,
}
g_currentMission.animalFoodSystem = {
getAnimalFood = function(_, animalTypeIndex) if animalTypeIndex == 7 then return {groups = {{fillTypes = {TMR}}, {fillTypes = {HAY, GRASS}}}} end end,
getMixturesByAnimalTypeIndex = function() return {} end,
}
unloadStations[1].targetStorages = nil
unloadStations[1].owningPlaceable = fs25Barn
local tmrLevel, tmrCapacity = ADSmartPickup.getStationLevelAndCapacity(unloadStations[1], TMR, 1)
check("E4 TMR-niveau fra foder-spec", tmrLevel, 10000)
check("E4 TMR-kapacitet = eget + fælles fri plads", tmrCapacity, 10000 + (100000 - 15000))
local grassLevel, grassCapacity = ADSmartPickup.getStationLevelAndCapacity(unloadStations[1], GRASS, 1)
check("E4 græs (fodergruppe uden lager) niveau 0", grassLevel, 0)
check("E4 græs kapacitet = fælles fri plads", grassCapacity, 85000)
local strawLevel, strawCapacity = ADSmartPickup.getStationLevelAndCapacity(unloadStations[1], STRAW, 1)
check("E4 halm via husbandry-opslag", strawLevel .. "/" .. strawCapacity, "20000/300000")
check("E4 mælk (output) er ikke et mål", ADSmartPickup.getStationLevelAndCapacity(unloadStations[1], MILK, 1), nil)
check("E4 sukkerroer (ikke foder) er ikke et mål", ADSmartPickup.getStationLevelAndCapacity(unloadStations[1], SUGARBEET, 1), nil)
g_currentMission.animalFoodSystem = nil
check("E3 farmId", ADSmartPickup.getFarmId(eDriver), 1)
-- L6: samme valg logges kun én gang