fix(markarbejde): afgrøde og vækststadie fra field.fieldState (spillets marktilstand); getFieldDataAtWorldPosition's 2. værdi er jord-bits, ikke vækst — F108 majs = bar jord; høstet mark vises som 'stub (afgrøde)' (v1.28.7.0)
This commit is contained in:
@@ -15,7 +15,7 @@ local MAIZE = 10
|
||||
function getWorldTranslation() return 0, 0, 0 end
|
||||
function getTerrainHeightAtWorldPos() return 0 end
|
||||
-- markskiltet står i marken, men ved en stribe uden afgrøde (x > 1400)
|
||||
local function cropAt(x) return x <= 1400 and MAIZE or nil end
|
||||
function cropAt(x) return x <= 1400 and MAIZE or nil end
|
||||
FSDensityMapUtil = {
|
||||
getFieldDataAtWorldPosition = function() return 1, 2 end,
|
||||
getFruitTypeIndexAtWorldPos = function(x, z) return cropAt(x) end,
|
||||
@@ -56,5 +56,31 @@ check("PG3 majsen findes trods skiltet på bar stribe", info and info.fruitName,
|
||||
check("PG4 ikke bar mark", info and info.kind, "harvest")
|
||||
check("PG5 markør ved kanten findes (afstand til omridset)", info and info.markerId, 900)
|
||||
check("PG6 afstand = til kanten", info and info.markerDistance, 5)
|
||||
|
||||
-- PG7-9: field.fieldState er spillets sandhed (fields.xml: MAIZE growthState 2); jord-bits fra
|
||||
-- getFieldDataAtWorldPosition (2. værdi) er IKKE vækststadie. Høstet mark (cutState) = bar, vist som stub.
|
||||
|
||||
field.fieldState = {fruitTypeIndex = MAIZE, growthState = 2}
|
||||
FSDensityMapUtil.getFieldDataAtWorldPosition = function() return true, 0 end -- jord-bits 0 lignede "ingen vækst"
|
||||
local function rescan()
|
||||
ADFields.cache, ADFields.listCache, ADFields.activeScan, ADFields.lastScanStart = {}, nil, nil, nil
|
||||
for _ = 1, 2000 do
|
||||
if ADFields.getInfo(108) ~= nil then break end
|
||||
ADFields.scanStep(adEnv, 1, now)
|
||||
now = now + 16
|
||||
end
|
||||
return ADFields.getInfo(108)
|
||||
end
|
||||
info = rescan()
|
||||
check("PG7 majs i vækst (fieldState), ikke bar", info and info.kind, "harvest")
|
||||
check("PG7 fase vokser", info and info.phase, "growing")
|
||||
field.fieldState = {fruitTypeIndex = MAIZE, growthState = 9}
|
||||
info = rescan()
|
||||
check("PG8 høstet (cutState) = bar", info and info.kind, "bare")
|
||||
check("PG8 stub af majs", info and info.stubbleOf, "Majs")
|
||||
field.fieldState = {fruitTypeIndex = 0, growthState = 0}
|
||||
cropAt = function() return nil end
|
||||
info = rescan()
|
||||
check("PG9 ingen afgrøde = bar uden stub", info and info.kind .. "/" .. tostring(info.stubbleOf), "bare/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