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:
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user