From 87929b3d9184a95ccdfe5f6f1a775071c0781588 Mon Sep 17 00:00:00 2001 From: reaperrr Date: Sun, 18 Oct 2020 13:43:08 +0200 Subject: [PATCH] Fix dock animation continuing after refinery died OnStateDock would always be triggered, even if the refinery was killed before the harvester would finish docking. --- OpenRA.Mods.Common/Activities/HarvesterDockSequence.cs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/OpenRA.Mods.Common/Activities/HarvesterDockSequence.cs b/OpenRA.Mods.Common/Activities/HarvesterDockSequence.cs index a499fe3297..2cc76f3975 100644 --- a/OpenRA.Mods.Common/Activities/HarvesterDockSequence.cs +++ b/OpenRA.Mods.Common/Activities/HarvesterDockSequence.cs @@ -62,10 +62,15 @@ namespace OpenRA.Mods.Common.Activities case DockingState.Dock: if (Refinery.IsInWorld && !Refinery.IsDead) + { foreach (var nd in Refinery.TraitsImplementing()) nd.Docked(Refinery, self); - OnStateDock(self); + OnStateDock(self); + } + else + dockingState = DockingState.Undock; + return false; case DockingState.Loop: