From 06ef3099297857aee800f67b3ad1d344ed6d900b Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Mon, 1 Feb 2010 20:15:43 +1300 Subject: [PATCH] Tweak landing sequence --- OpenRa.Mods.RA/ProductionAirdrop.cs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/OpenRa.Mods.RA/ProductionAirdrop.cs b/OpenRa.Mods.RA/ProductionAirdrop.cs index 966e4089a8..e57554a6fd 100644 --- a/OpenRa.Mods.RA/ProductionAirdrop.cs +++ b/OpenRa.Mods.RA/ProductionAirdrop.cs @@ -23,7 +23,8 @@ namespace OpenRa.Mods.RA // Start at the edge of the map, to the right of the airfield var startPos = new int2(owner.World.Map.XOffset + owner.World.Map.Width, self.Location.Y); var endPos = new int2(owner.World.Map.XOffset, self.Location.Y); - var deployOffset = new float2(24f,0); + var unloadOffset = new int2(1,1); + var exitOffset = new int2(3,1); var rp = self.traits.GetOrDefault(); owner.World.AddFrameEndTask(w => @@ -35,15 +36,17 @@ namespace OpenRa.Mods.RA cargo.Load(a, newUnit); a.CancelActivity(); - a.QueueActivity(new Land(self.CenterLocation+deployOffset)); + a.QueueActivity(new Land(self.CenterLocation)); a.QueueActivity(new CallFunc(() => { var actor = cargo.Unload(self); self.World.AddFrameEndTask(ww => { ww.Add(actor); - actor.traits.Get().TeleportTo(actor, self.Location); + actor.traits.Get().TeleportTo(actor, self.Location + unloadOffset); + newUnit.traits.Get().Facing = 192; actor.CancelActivity(); + actor.QueueActivity(new Move(self.Location + exitOffset, self)); actor.QueueActivity(new Move(rp.rallyPoint, 0)); foreach (var t in self.traits.WithInterface())