Fix for #6161 queue commands for Plane/Heli (do not ignore Order.Queued in ResolveOrder())

This commit is contained in:
atimoschenkow
2015-08-02 12:29:35 +02:00
parent 0efb8fc6f4
commit b1c51cc910
5 changed files with 89 additions and 47 deletions

View File

@@ -83,25 +83,22 @@ namespace OpenRA.Mods.Common.Traits
if (!explored && !Info.MoveIntoShroud)
return;
UnReserve();
if (!order.Queued)
UnReserve();
var target = Target.FromCell(self.World, cell);
self.SetTargetLine(target, Color.Green);
self.CancelActivity();
self.QueueActivity(new Fly(self, target));
self.QueueActivity(new FlyCircle(self));
self.QueueActivity(order.Queued, new FlyAndContinueWithCirclesWhenIdle(self, target));
}
else if (order.OrderString == "Enter")
{
if (Reservable.IsReserved(order.TargetActor)) return;
UnReserve();
if (!order.Queued)
UnReserve();
self.SetTargetLine(Target.FromOrder(self.World, order), Color.Green);
self.CancelActivity();
self.QueueActivity(new ReturnToBase(self, order.TargetActor));
self.QueueActivity(new ResupplyAircraft(self));
self.QueueActivity(order.Queued, Util.SequenceActivities(new ReturnToBase(self, order.TargetActor), new ResupplyAircraft(self)));
}
else if (order.OrderString == "Stop")
{