Clear placed mines queued fields too.
This commit is contained in:
@@ -39,7 +39,6 @@ namespace OpenRA.Mods.Cnc.Activities
|
||||
movement = self.Trait<IMove>();
|
||||
rearmableInfo = self.Info.TraitInfoOrDefault<RearmableInfo>();
|
||||
this.minefield = minefield;
|
||||
ChildHasPriority = false;
|
||||
}
|
||||
|
||||
protected override void OnFirstRun(Actor self)
|
||||
@@ -60,13 +59,6 @@ namespace OpenRA.Mods.Cnc.Activities
|
||||
|
||||
public override bool Tick(Actor self)
|
||||
{
|
||||
// Remove cells that have already been mined
|
||||
minefield.RemoveAll(c => self.World.ActorMap.GetActorsAt(c)
|
||||
.Any(a => a.Info.Name == minelayer.Info.Mine.ToLowerInvariant()));
|
||||
|
||||
if (!TickChild(self))
|
||||
return false;
|
||||
|
||||
returnToBase = false;
|
||||
|
||||
if (IsCanceling)
|
||||
@@ -109,6 +101,14 @@ namespace OpenRA.Mods.Cnc.Activities
|
||||
return true;
|
||||
}
|
||||
|
||||
public void CleanPlacedMines(Actor self)
|
||||
{
|
||||
// Remove cells that have already been mined
|
||||
if (minefield != null)
|
||||
minefield.RemoveAll(c => self.World.ActorMap.GetActorsAt(c)
|
||||
.Any(a => a.Info.Name == minelayer.Info.Mine.ToLowerInvariant()));
|
||||
}
|
||||
|
||||
public override IEnumerable<TargetLineNode> TargetLineNodes(Actor self)
|
||||
{
|
||||
if (returnToBase)
|
||||
|
||||
Reference in New Issue
Block a user