From 8c80b61897c87170ee3f6466a2b693f4485011bb Mon Sep 17 00:00:00 2001 From: abcdefg30 Date: Sat, 30 Apr 2016 13:15:51 +0200 Subject: [PATCH] Fix the tech tree not refreshing properly on owner change --- OpenRA.Game/Actor.cs | 6 +++--- OpenRA.Mods.Common/Traits/ProximityCapturable.cs | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/OpenRA.Game/Actor.cs b/OpenRA.Game/Actor.cs index 3fca76f3fe..8c64efe563 100644 --- a/OpenRA.Game/Actor.cs +++ b/OpenRA.Game/Actor.cs @@ -301,11 +301,11 @@ namespace OpenRA Owner = newOwner; Generation++; - if (wasInWorld) - w.Add(this); - foreach (var t in TraitsImplementing()) t.OnOwnerChanged(this, oldOwner, newOwner); + + if (wasInWorld) + w.Add(this); }); } diff --git a/OpenRA.Mods.Common/Traits/ProximityCapturable.cs b/OpenRA.Mods.Common/Traits/ProximityCapturable.cs index dd3100d8ec..7fe2c3fc73 100644 --- a/OpenRA.Mods.Common/Traits/ProximityCapturable.cs +++ b/OpenRA.Mods.Common/Traits/ProximityCapturable.cs @@ -189,7 +189,7 @@ namespace OpenRA.Mods.Common.Traits void INotifyOwnerChanged.OnOwnerChanged(Actor self, Player oldOwner, Player newOwner) { - skipTriggerUpdate = false; + Game.RunAfterTick(() => skipTriggerUpdate = false); } } }