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 -4
View File
@@ -371,14 +371,41 @@ end
-- ---- opslag til dropdowns ----
-- Mål er steder der SKAL holdes fyldt: stalde (1) og fabrikker (2). Siloer tager alt og
-- er kilder, ikke mål. Returnerer markører sorteret efter type, dernæst navn.
local function getTargetKind(station)
local placeable = station.owningPlaceable
if placeable == nil then
return nil
end
if placeable.getHusbandryFillLevel ~= nil then
return 1
end
if placeable.spec_productionPoint ~= nil then
return 2
end
return nil
end
function ADRunsController.getTargetMarkers(adEnv, farmId)
local result = {}
local entries = {}
for _, marker in pairs(adEnv.ADGraphManager:getMapMarkers()) do
if ADSmartPickup.getUnloadStationAtWayPointId(adEnv, marker.id, farmId) ~= nil then
table.insert(result, marker)
local station = ADSmartPickup.getUnloadStationAtWayPointId(adEnv, marker.id, farmId)
local kind = station ~= nil and getTargetKind(station) or nil
if kind ~= nil then
table.insert(entries, {marker = marker, kind = kind})
end
end
table.sort(result, function(a, b) return tostring(a.name) < tostring(b.name) end)
table.sort(entries, function(a, b)
if a.kind ~= b.kind then
return a.kind < b.kind
end
return tostring(a.marker.name) < tostring(b.marker.name)
end)
local result = {}
for index, entry in ipairs(entries) do
result[index] = entry.marker
end
return result
end