fix: Wait-pulje = mapper med 'Wait' i navnet, ikke markørnavne (v1.7.1.0)
Savegame viste eksisterende mark-ventepladser 'F91 Wait', 'F108 Wait' m.fl. i mark-mapperne — de ville være røget i puljen med navne-reglen. Brugerens nye punkter ligger i mappen 'Cow Wait' (6 markører med samme navn) -> mappen afgør. Log viser markørnummer, da navne kan være ens.
This commit is contained in:
@@ -122,14 +122,13 @@ function ADSupplyPlanner.fullLoadFits(freeSpace, loadCapacity)
|
||||
return freeSpace >= loadCapacity
|
||||
end
|
||||
|
||||
-- Wait-punkter: markører med ordet "Wait" i navnet (uanset store/små) eller i mappen "Wait".
|
||||
-- Her venter en traktor med rest-læs, til der igen er plads i målet.
|
||||
-- Wait-punkter: alle markører i en MAPPE med ordet "Wait" i navnet (uanset store/små),
|
||||
-- fx mappen "Cow Wait". Her venter en traktor med rest-læs, til der igen er plads i
|
||||
-- målet. Markørens eget navn tæller ikke — spillerens mark-ventepladser ("F91 Wait")
|
||||
-- ligger i mark-mapperne og hører ikke til puljen.
|
||||
function ADSupplyPlanner.isWaitMarker(marker)
|
||||
if marker.group == "Wait" then
|
||||
return true
|
||||
end
|
||||
local name = string.lower(tostring(marker.name or ""))
|
||||
return string.find(name, "%f[%a]wait%f[%A]") ~= nil
|
||||
local group = string.lower(tostring(marker.group or ""))
|
||||
return string.find(group, "%f[%a]wait%f[%A]") ~= nil
|
||||
end
|
||||
|
||||
-- candidates: {{marker, x, z}}; claims: {[marker.id] = køretøj}. Nærmeste punkt der er
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
-- Holder en traktor med rest-læs ved en fuld stald AutoDrive i dag stille ved
|
||||
-- aflæsningspunktet "til den er tømt på en eller anden måde" — og spærrer for
|
||||
-- de næste i køen. Her omdirigeres den i stedet til nærmeste ledige Wait-punkt
|
||||
-- (markør med ordet "Wait" i navnet eller i mappen "Wait"), og når målet igen
|
||||
-- (markør i en mappe med ordet "Wait" i navnet, fx "Cow Wait"), og når målet igen
|
||||
-- har plads til HELE resten, sendes den tilbage og læsser af.
|
||||
--
|
||||
-- Kun den aktuelle aflæsningsopgaves destination ændres; AutoDrives mål,
|
||||
@@ -94,7 +94,7 @@ local function startWaiting(adEnv, task)
|
||||
if candidate == nil then
|
||||
if not warnedNoWaitPoint[vehicle] then
|
||||
warnedNoWaitPoint[vehicle] = true
|
||||
Logging.warning(ADUnloadWait.LOG_PREFIX .. "'%s' har %.0f l rest, og målet er fuldt — intet ledigt Wait-punkt (markør med 'Wait' i navnet), så AutoDrive venter ved målet", tostring(vehicle:getName()), rest)
|
||||
Logging.warning(ADUnloadWait.LOG_PREFIX .. "'%s' har %.0f l rest, og målet er fuldt — intet ledigt Wait-punkt (markør i en mappe med 'Wait' i navnet), så AutoDrive venter ved målet", tostring(vehicle:getName()), rest)
|
||||
end
|
||||
return
|
||||
end
|
||||
@@ -103,7 +103,7 @@ local function startWaiting(adEnv, task)
|
||||
waits[vehicle] = {task = task, homeDestinationID = task.destinationID, waitMarker = candidate.marker, fillType = fillType, rest = rest}
|
||||
redirect(task, candidate.marker.id)
|
||||
local fillTypeName = g_fillTypeManager ~= nil and g_fillTypeManager:getFillTypeNameByIndex(fillType) or tostring(fillType)
|
||||
Logging.info(ADUnloadWait.LOG_PREFIX .. "'%s' venter ved %s: %.0f l %s rest, målet har kun %.0f l fri", tostring(vehicle:getName()), tostring(candidate.marker.name), rest, tostring(fillTypeName), free)
|
||||
Logging.info(ADUnloadWait.LOG_PREFIX .. "'%s' venter ved %s (markør %s): %.0f l %s rest, målet har kun %.0f l fri", tostring(vehicle:getName()), tostring(candidate.marker.name), tostring(candidate.marker.markerIndex or candidate.marker.id), rest, tostring(fillTypeName), free)
|
||||
end
|
||||
|
||||
-- Ventende køretøj: er der nu plads til hele resten, køres tilbage til målet.
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||
<modDesc descVersion="107">
|
||||
<author>masterdraco</author>
|
||||
<version>1.7.0.0</version>
|
||||
<version>1.7.1.0</version>
|
||||
<title>
|
||||
<en>AD Smart Pickup</en>
|
||||
</title>
|
||||
<description>
|
||||
<en><![CDATA[AutoDrive-tillæg: når pålæsningsmål roteres i en mappe, køres der direkte til den silo i mappen, der har den valgte vare (mindst fyldte først), i stedet for at prøve markørerne én efter én. Vælges FLERE varer i AutoDrive, ses de som ingredienser til aflæsningsmålet (fx en TMR-blander): én traktor henter pr. tur den vare målet mangler mest, fra en silo hvor som helst på kortet. Er målet en fabrik, følger listen automatisk fabrikkens tændte produktioner (tid-til-tom først). Rest-læs ved fuldt mål venter ved nærmeste ledige "Wait"-markør til der er plads. Kræver FS25_AutoDrive med "Brug mapper" + "Rotér mål: pålæsning".]]></en>
|
||||
<en><![CDATA[AutoDrive-tillæg: når pålæsningsmål roteres i en mappe, køres der direkte til den silo i mappen, der har den valgte vare (mindst fyldte først), i stedet for at prøve markørerne én efter én. Vælges FLERE varer i AutoDrive, ses de som ingredienser til aflæsningsmålet (fx en TMR-blander): én traktor henter pr. tur den vare målet mangler mest, fra en silo hvor som helst på kortet. Er målet en fabrik, følger listen automatisk fabrikkens tændte produktioner (tid-til-tom først). Rest-læs ved fuldt mål venter ved nærmeste ledige markør i en "Wait"-mappe til der er plads. Kræver FS25_AutoDrive med "Brug mapper" + "Rotér mål: pålæsning".]]></en>
|
||||
</description>
|
||||
<iconFilename>icon.dds</iconFilename>
|
||||
<multiplayer supported="true"/>
|
||||
|
||||
Reference in New Issue
Block a user