diff --git a/OpenRA.Mods.Cnc/ProductionAirdrop.cs b/OpenRA.Mods.Cnc/ProductionAirdrop.cs index 899ec0ef52..ead2648fc4 100644 --- a/OpenRA.Mods.Cnc/ProductionAirdrop.cs +++ b/OpenRA.Mods.Cnc/ProductionAirdrop.cs @@ -12,9 +12,9 @@ using System.Linq; using OpenRA.FileFormats; using OpenRA.Mods.RA; using OpenRA.Mods.RA.Activities; +using OpenRA.Mods.RA.Render; using OpenRA.Traits; using OpenRA.Traits.Activities; -using OpenRA.Mods.RA.Render; namespace OpenRA.Mods.Cnc { @@ -33,8 +33,7 @@ namespace OpenRA.Mods.Cnc // Start and end beyond the edge of the map, to give a finite delay, and ability to land when AFLD is on map edge var startPos = new int2(owner.World.Map.XOffset + owner.World.Map.Width+5, self.Location.Y); - var endPos = new int2(owner.World.Map.XOffset-5, self.Location.Y); - + var endPos = new int2(owner.World.Map.XOffset-5, self.Location.Y); // Assume a single exit point for simplicity var exit = self.Info.Traits.WithInterface().First(); diff --git a/OpenRA.Mods.RA/ReturnOnIdle.cs b/OpenRA.Mods.RA/ReturnOnIdle.cs index d84581441b..1ef8b3f8c5 100755 --- a/OpenRA.Mods.RA/ReturnOnIdle.cs +++ b/OpenRA.Mods.RA/ReturnOnIdle.cs @@ -37,4 +37,14 @@ namespace OpenRA.Mods.RA } } } + + class FlyAwayOnIdleInfo : TraitInfo { } + + class FlyAwayOnIdle : INotifyIdle + { + public void Idle(Actor self) + { + self.QueueActivity(new FlyOffMap()); + } + } } diff --git a/mods/cnc/rules/vehicles.yaml b/mods/cnc/rules/vehicles.yaml index ec8b947c85..78a5442943 100644 --- a/mods/cnc/rules/vehicles.yaml +++ b/mods/cnc/rules/vehicles.yaml @@ -562,6 +562,7 @@ C17: -Selectable: -Targetable: -GainsExperience: + FlyAwayOnIdle: A10: Inherits: ^Plane @@ -584,6 +585,7 @@ A10: Range: 3 -Selectable: -GainsExperience: + FlyAwayOnIdle: BOAT: Inherits: ^Ship