From c93333a816a9daede3b0487f53d72d9a4792c4c3 Mon Sep 17 00:00:00 2001 From: reaperrr Date: Sat, 9 Jun 2018 18:22:17 +0200 Subject: [PATCH] Cache IFacing in Turn activity Instead of looking it up every tick. --- OpenRA.Mods.Common/Activities/Turn.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OpenRA.Mods.Common/Activities/Turn.cs b/OpenRA.Mods.Common/Activities/Turn.cs index e1aca569eb..522a7efdd5 100644 --- a/OpenRA.Mods.Common/Activities/Turn.cs +++ b/OpenRA.Mods.Common/Activities/Turn.cs @@ -18,11 +18,13 @@ namespace OpenRA.Mods.Common.Activities public class Turn : Activity { readonly IDisabledTrait disablable; + readonly IFacing facing; readonly int desiredFacing; public Turn(Actor self, int desiredFacing) { disablable = self.TraitOrDefault() as IDisabledTrait; + facing = self.Trait(); this.desiredFacing = desiredFacing; } @@ -33,8 +35,6 @@ namespace OpenRA.Mods.Common.Activities if (disablable != null && disablable.IsTraitDisabled) return this; - var facing = self.Trait(); - if (desiredFacing == facing.Facing) return NextActivity; facing.Facing = Util.TickFacing(facing.Facing, desiredFacing, facing.TurnSpeed);