Make the AI only consider harvesters 'idle' if last resource search failed
Otherwise the AI would consider the harvester 'idle' in too many situations. This way, the AI now only uses its own resource search algorithm if the next resource patch is too far away for the FindResources activity to find it.
This commit is contained in:
@@ -69,6 +69,8 @@ namespace OpenRA.Mods.Common.Activities
|
||||
if (!harv.IsEmpty)
|
||||
return deliver;
|
||||
|
||||
harv.LastSearchFailed = true;
|
||||
|
||||
var unblockCell = harv.LastHarvestedCell ?? (self.Location + harvInfo.UnblockCell);
|
||||
var moveTo = mobile.NearestMoveableCell(unblockCell, 2, 5);
|
||||
self.QueueActivity(mobile.MoveTo(moveTo, 1));
|
||||
@@ -92,6 +94,8 @@ namespace OpenRA.Mods.Common.Activities
|
||||
if (!claimLayer.TryClaimCell(self, closestHarvestablePosition.Value))
|
||||
return ActivityUtils.SequenceActivities(new Wait(25), this);
|
||||
|
||||
harv.LastSearchFailed = false;
|
||||
|
||||
// If not given a direct order, assume ordered to the first resource location we find:
|
||||
if (!harv.LastOrderLocation.HasValue)
|
||||
harv.LastOrderLocation = closestHarvestablePosition;
|
||||
|
||||
Reference in New Issue
Block a user