fix(markarbejde): kultivering/pløjning måles på jorden — er ≥95 % af marken klargjort/pløjet, går trinnet videre uden at sende maskinen ud igen (også efter genindlæsning; F17 blev kultiveret 3 gange) (v1.50.3.0)
This commit is contained in:
@@ -200,5 +200,23 @@ end
|
||||
|
||||
-- pulje: en traktor der henter et redskab tæller som i gang (ellers sendes endnu en ud)
|
||||
check("pulje: henter -> ingenting", J.decide(mowing, info, {{phase = "fetching"}}, 0).action, "none")
|
||||
-- JP: klargøring der allerede er gjort (fx efter genindlæsning) går videre uden at sende maskinen ud igen
|
||||
-- (in-game 28/9: F17 blev kultiveret 3 gange — opgaver gemmes ikke, så "færdig" blev aldrig set)
|
||||
local cultField = M.with(M.newField(17), {stage = "cultivating", kind = "bare", plan = {mode = "auto"}})
|
||||
local cultInfo = {id = 17, markerId = 5, kind = "bare", readyRatio = 0, needs = {}}
|
||||
cultInfo.prepared = 0.98
|
||||
check("JP kultiveret -> videre", J.decide(cultField, cultInfo, {}, 0).action, "advance")
|
||||
cultInfo.prepared = 0.4
|
||||
check("JP halvt kultiveret -> send maskine", J.decide(cultField, cultInfo, {}, 0).action, "dispatch")
|
||||
cultInfo.prepared = nil
|
||||
check("JP ukendt jord -> som før (send)", J.decide(cultField, cultInfo, {}, 0).action, "dispatch")
|
||||
cultInfo.prepared = 0.98
|
||||
check("JP kultivator i gang -> vent på den", J.decide(cultField, cultInfo, {{phase = "working", stage = "cultivating"}}, 0).action, "none")
|
||||
local plowField = M.with(cultField, {stage = "plowing"})
|
||||
check("JP kultiveret er ikke pløjet -> send plov", J.decide(plowField, cultInfo, {}, 0).action, "dispatch")
|
||||
cultInfo.plowed = 0.97
|
||||
check("JP pløjet -> videre", J.decide(plowField, cultInfo, {}, 0).action, "advance")
|
||||
local sowField = M.with(cultField, {stage = "sowing"})
|
||||
check("JP såning berøres ikke af klargjort jord", J.decide(sowField, cultInfo, {}, 0).action ~= "advance", true)
|
||||
print(failures == 0 and "\nALLE TESTS OK" or ("\n" .. failures .. " FEJL"))
|
||||
os.exit(failures == 0 and 0 or 1)
|
||||
|
||||
@@ -78,5 +78,15 @@ check("F9 fase klar", F.growthPhase(6, potato), "ready")
|
||||
check("F9 toppet klar", F.growthPhase(10, potato), "ready")
|
||||
check("F9 ingen forberedelse", F.isPreparable(6, {minPreparingGrowthState = -1}), false)
|
||||
|
||||
-- jordtype -> klargjort/pløjet (værdierne kommer fra spillets fieldGroundSystem)
|
||||
local groundValues = {STUBBLE_TILLAGE = 1, CULTIVATED = 2, SEEDBED = 3, PLOWED = 4, ROLLED_SEEDBED = 5, SOWN = 6}
|
||||
local function cls(v) local p, pl = ADFields.classifyGround(v, groundValues) return tostring(p) .. "|" .. tostring(pl) end
|
||||
check("jord: pløjet", cls(4), "true|true")
|
||||
check("jord: kultiveret", cls(2), "true|false")
|
||||
check("jord: stubbearbejdet", cls(1), "true|false")
|
||||
check("jord: sået", cls(6), "false|false")
|
||||
check("jord: ukendt værdi", cls(nil), "nil|nil")
|
||||
groundValues.NONE = 0
|
||||
check("jord: ingen markjord tæller ikke med", cls(0), "nil|nil")
|
||||
print(failures == 0 and "\nALLE TESTS OK" or ("\n" .. failures .. " FEJL"))
|
||||
os.exit(failures == 0 and 0 or 1)
|
||||
|
||||
Reference in New Issue
Block a user