fix(kæde): ingen markskift eller forslag før markscanningen har set alle marker

This commit is contained in:
2026-09-30 14:25:14 +02:00
parent 605c4e8d45
commit d2453f78fb
6 changed files with 39 additions and 8 deletions
+7 -1
View File
@@ -187,7 +187,12 @@ local function readUsedFruits(data, adEnv, farmId, nameOf)
if not ok then failed(data, "rates", "staldforbrug kunne ikke læses: %s", tostring(err)) end
end
-- Markscanningen har ikke nået alle marker endnu (efter indlæsning ~én mark pr. 2 s): marklisten er ufuldstændig,
-- så udbud undervurderes -> fieldsIncomplete (kæden rører ingen marker) og partial (intet slukkes/stoppes).
local function readFields(data)
if ADFields.isScanComplete ~= nil and not ADFields.isScanComplete() then
data.partial, data.fieldsIncomplete = true, true
end
for _, info in ipairs(ADFields.list() or {}) do
local ok, entry = pcall(function()
local field = ADFieldJobs.getField(info.id)
@@ -208,7 +213,8 @@ end
-- ---- samlet ----
-- byChain = {[recipeKey] = true} for produktioner kæden selv har tændt (ikke rødder).
-- data.partial = true når noget ikke kunne læses i dette kald.
-- data.partial = true når noget ikke kunne læses i dette kald; data.fieldsIncomplete = true mens markscanningen
-- ikke har nået alle marker.
function ADChainData.collect(adEnv, farmId, byChain)
local data = {recipes = {}, husbandry = {}, crops = {}, stock = {}, fields = {}, yields = {}, prices = {},
usedFruits = {}, points = {}, fillTitles = {}, fillIndex = {}}