diff --git a/OpenRA.Mods.RA/Activities/Fly.cs b/OpenRA.Mods.RA/Activities/Fly.cs index 5a53f6eb0c53..4cdb8317d3a8 100644 --- a/OpenRA.Mods.RA/Activities/Fly.cs +++ b/OpenRA.Mods.RA/Activities/Fly.cs @@ -57,7 +57,7 @@ public static class FlyUtil public static void Fly(Actor self, int desiredAltitude ) { var aircraft = self.Trait(); - var speed = .2f * aircraft.MovementSpeedForCell(self, self.Location); + var speed = .2f * aircraft.MovementSpeed; var angle = aircraft.Facing / 128f * Math.PI; aircraft.center += speed * -float2.FromAngle((float)angle); aircraft.Altitude += Math.Sign(desiredAltitude - aircraft.Altitude); diff --git a/OpenRA.Mods.RA/Activities/HeliAttack.cs b/OpenRA.Mods.RA/Activities/HeliAttack.cs index bbf7827bba60..f2228d5c876c 100644 --- a/OpenRA.Mods.RA/Activities/HeliAttack.cs +++ b/OpenRA.Mods.RA/Activities/HeliAttack.cs @@ -45,7 +45,7 @@ public override IActivity Tick(Actor self) var desiredFacing = Util.GetFacing(dist, aircraft.Facing); aircraft.Facing = Util.TickFacing(aircraft.Facing, desiredFacing, aircraft.ROT); - var rawSpeed = .2f * aircraft.MovementSpeedForCell(self, self.Location); + var rawSpeed = .2f * aircraft.MovementSpeed; if (!float2.WithinEpsilon(float2.Zero, dist, range * Game.CellSize)) aircraft.center += (rawSpeed / dist.Length) * dist; diff --git a/OpenRA.Mods.RA/Activities/HeliFly.cs b/OpenRA.Mods.RA/Activities/HeliFly.cs index 418e9c616192..7d95f94b44fe 100644 --- a/OpenRA.Mods.RA/Activities/HeliFly.cs +++ b/OpenRA.Mods.RA/Activities/HeliFly.cs @@ -46,7 +46,7 @@ public override IActivity Tick(Actor self) aircraft.Facing = Util.TickFacing(aircraft.Facing, desiredFacing, aircraft.ROT); - var rawSpeed = .2f * aircraft.MovementSpeedForCell(self, self.Location); + var rawSpeed = .2f * aircraft.MovementSpeed; aircraft.center += (rawSpeed / dist.Length) * dist; return this; diff --git a/OpenRA.Mods.RA/Activities/Land.cs b/OpenRA.Mods.RA/Activities/Land.cs index e64b5324a6bd..af3f54dbaced 100644 --- a/OpenRA.Mods.RA/Activities/Land.cs +++ b/OpenRA.Mods.RA/Activities/Land.cs @@ -38,7 +38,7 @@ public override IActivity Tick(Actor self) var desiredFacing = Util.GetFacing(d, aircraft.Facing); aircraft.Facing = Util.TickFacing(aircraft.Facing, desiredFacing, aircraft.ROT); - var speed = .2f * aircraft.MovementSpeedForCell(self, self.Location); + var speed = .2f * aircraft.MovementSpeed; var angle = aircraft.Facing / 128f * Math.PI; aircraft.center += speed * -float2.FromAngle((float)angle); diff --git a/OpenRA.Mods.RA/Activities/ReturnToBase.cs b/OpenRA.Mods.RA/Activities/ReturnToBase.cs index 3155fe9d8930..3d14a0a8d8fc 100644 --- a/OpenRA.Mods.RA/Activities/ReturnToBase.cs +++ b/OpenRA.Mods.RA/Activities/ReturnToBase.cs @@ -48,7 +48,7 @@ void Calculate(Actor self) var landPos = dest.CenterLocation; var aircraft = self.Trait(); - var speed = .2f * aircraft.MovementSpeedForCell(self, self.Location); + var speed = .2f * aircraft.MovementSpeed; var approachStart = landPos - new float2(aircraft.Altitude * speed, 0); var turnRadius = (128f / self.Info.Traits.Get().ROT) * speed / (float)Math.PI; diff --git a/OpenRA.Mods.RA/Aircraft.cs b/OpenRA.Mods.RA/Aircraft.cs index a9bce837bfed..9246c291ce4b 100755 --- a/OpenRA.Mods.RA/Aircraft.cs +++ b/OpenRA.Mods.RA/Aircraft.cs @@ -80,14 +80,17 @@ public bool AircraftCanEnter(Actor a) } public bool CanEnterCell(int2 location) { return true; } - - public float MovementSpeedForCell(Actor self, int2 cell) - { - var modifier = self - .TraitsImplementing() - .Select(t => t.GetSpeedModifier()) - .Product(); - return Info.Speed * modifier; + + public float MovementSpeed + { + get + { + var modifier = self + .TraitsImplementing() + .Select( t => t.GetSpeedModifier() ) + .Product(); + return Info.Speed * modifier; + } } int2[] noCells = new int2[] { }; diff --git a/OpenRA.Mods.RA/Helicopter.cs b/OpenRA.Mods.RA/Helicopter.cs index 09f21ff77282..3f1aae725289 100644 --- a/OpenRA.Mods.RA/Helicopter.cs +++ b/OpenRA.Mods.RA/Helicopter.cs @@ -133,7 +133,7 @@ public void Tick(Actor self) if (aircraft.Altitude <= 0) return; - var rawSpeed = .2f * aircraft.MovementSpeedForCell(self, self.Location); + var rawSpeed = .2f * aircraft.MovementSpeed; var otherHelis = self.World.FindUnitsInCircle(self.CenterLocation, Info.IdealSeparation) .Where(a => a.HasTrait());