diff --git a/OpenRA.Game/Traits/Repairable.cs b/OpenRA.Game/Traits/Repairable.cs index ea13e56b58..1ee1ecdc5f 100644 --- a/OpenRA.Game/Traits/Repairable.cs +++ b/OpenRA.Game/Traits/Repairable.cs @@ -51,18 +51,17 @@ namespace OpenRA.Traits if (order.OrderString == "Enter") { - var res = order.TargetActor.traits.GetOrDefault(); - var wp = order.TargetActor.traits.GetOrDefault().rallyPoint; + var rp = order.TargetActor.traits.GetOrDefault(); self.CancelActivity(); self.QueueActivity(new Move(((1 / 24f) * order.TargetActor.CenterLocation).ToInt2(), order.TargetActor)); self.QueueActivity(new Rearm()); self.QueueActivity(new Repair()); - if (order.TargetActor.traits.Contains()) - self.QueueActivity(new CallFunc( - () => self.QueueActivity(new Move(order.TargetActor.traits.Get().rallyPoint, - order.TargetActor)))); + + if (rp != null) + self.QueueActivity(new CallFunc( + () => self.QueueActivity(new Move(rp.rallyPoint, order.TargetActor)))); } } }