From f180f44542f67a1e3b1adceb7847634b167583e8 Mon Sep 17 00:00:00 2001 From: RoosterDragon Date: Sat, 31 May 2014 08:05:03 +0100 Subject: [PATCH] Cache some dictionary lookups in FrozenUnderFog.Tick. Since FrozenUnderFog.Tick gets called a lot, these dictionary lookups were actually getting repeated a fair amount. Avoiding the repeated work is a minor performance improvement. --- OpenRA.Mods.RA/Modifiers/FrozenUnderFog.cs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/OpenRA.Mods.RA/Modifiers/FrozenUnderFog.cs b/OpenRA.Mods.RA/Modifiers/FrozenUnderFog.cs index 7ecdef1d1b..1ab614f67a 100644 --- a/OpenRA.Mods.RA/Modifiers/FrozenUnderFog.cs +++ b/OpenRA.Mods.RA/Modifiers/FrozenUnderFog.cs @@ -82,8 +82,7 @@ namespace OpenRA.Mods.RA foreach (var p in self.World.Players) { visible[p] |= startsRevealed; - frozen[p] = new FrozenActor(self, footprint); - p.PlayerActor.Trait().Add(frozen[p]); + p.PlayerActor.Trait().Add(frozen[p] = new FrozenActor(self, footprint)); } initialized = true; @@ -94,18 +93,19 @@ namespace OpenRA.Mods.RA if (!visible[player]) continue; - frozen[player].Owner = self.Owner; + var actor = frozen[player]; + actor.Owner = self.Owner; if (health.Value != null) { - frozen[player].HP = health.Value.HP; - frozen[player].DamageState = health.Value.DamageState; + actor.HP = health.Value.HP; + actor.DamageState = health.Value.DamageState; } if (tooltip.Value != null) { - frozen[player].TooltipName = tooltip.Value.Name(); - frozen[player].TooltipOwner = tooltip.Value.Owner(); + actor.TooltipName = tooltip.Value.Name(); + actor.TooltipOwner = tooltip.Value.Owner(); } } }