diff --git a/OpenRA.Mods.Common/Activities/MoveToDock.cs b/OpenRA.Mods.Common/Activities/MoveToDock.cs index b34b9dd774..502ef1f2b5 100644 --- a/OpenRA.Mods.Common/Activities/MoveToDock.cs +++ b/OpenRA.Mods.Common/Activities/MoveToDock.cs @@ -115,6 +115,9 @@ namespace OpenRA.Mods.Common.Activities } else { + foreach (var ndcm in notifyDockClientMoving) + ndcm.MovementCancelled(self); + // The dock explicitly chosen by the user is currently occupied. Wait and check again. QueueChild(new Wait(dockClient.Info.SearchForDockDelay)); return false; diff --git a/OpenRA.Mods.Common/Activities/Resupply.cs b/OpenRA.Mods.Common/Activities/Resupply.cs index 60056d44eb..bf62b3104f 100644 --- a/OpenRA.Mods.Common/Activities/Resupply.cs +++ b/OpenRA.Mods.Common/Activities/Resupply.cs @@ -158,6 +158,9 @@ namespace OpenRA.Mods.Common.Activities if (!actualResupplyStarted && activeResupplyTypes > 0) { actualResupplyStarted = true; + foreach (var t in transportCallers) + t.MovementCancelled(self); + foreach (var notifyResupply in notifyResupplies) notifyResupply.BeforeResupply(host.Actor, self, activeResupplyTypes); diff --git a/OpenRA.Mods.Common/Traits/CarryableHarvester.cs b/OpenRA.Mods.Common/Traits/CarryableHarvester.cs index 571365a417..6685583e08 100644 --- a/OpenRA.Mods.Common/Traits/CarryableHarvester.cs +++ b/OpenRA.Mods.Common/Traits/CarryableHarvester.cs @@ -52,6 +52,10 @@ namespace OpenRA.Mods.Common.Traits t.MovementCancelled(self); } - void INotifyHarvestAction.Harvested(Actor self, string resourceType) { } + void INotifyHarvestAction.Harvested(Actor self, string resourceType) + { + foreach (var t in transports) + t.MovementCancelled(self); + } } }