Cache IFacing in Turn activity

Instead of looking it up every tick.
This commit is contained in:
reaperrr
2018-06-09 18:22:17 +02:00
committed by Paul Chote
parent 96377a99c4
commit c93333a816

View File

@@ -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<IMove>() as IDisabledTrait;
facing = self.Trait<IFacing>();
this.desiredFacing = desiredFacing;
}
@@ -33,8 +35,6 @@ namespace OpenRA.Mods.Common.Activities
if (disablable != null && disablable.IsTraitDisabled)
return this;
var facing = self.Trait<IFacing>();
if (desiredFacing == facing.Facing)
return NextActivity;
facing.Facing = Util.TickFacing(facing.Facing, desiredFacing, facing.TurnSpeed);