Cache trait look-ups in the constructor where possible for Air activities/traits

This commit is contained in:
reaperrr
2015-03-14 03:59:37 +01:00
parent 9a780ba07d
commit 1e9d1a6cb7
22 changed files with 160 additions and 93 deletions

View File

@@ -16,9 +16,14 @@ namespace OpenRA.Mods.Common.Activities
{
public class Land : Activity
{
Target target;
readonly Target target;
readonly Plane plane;
public Land(Target t) { target = t; }
public Land(Actor self, Target t)
{
target = t;
plane = self.Trait<Plane>();
}
public override Activity Tick(Actor self)
{
@@ -28,7 +33,6 @@ namespace OpenRA.Mods.Common.Activities
if (IsCanceled)
return NextActivity;
var plane = self.Trait<Plane>();
var d = target.CenterPosition - self.CenterPosition;
// The next move would overshoot, so just set the final position