fix cancel interaction with UnloadCargo activity; punt to the end of the frame

This commit is contained in:
Chris Forbes
2011-07-29 21:00:45 +12:00
parent 26b9feaf4b
commit 47757161d6

View File

@@ -14,7 +14,6 @@ using OpenRA.Mods.RA.Buildings;
using OpenRA.Mods.RA.Render; using OpenRA.Mods.RA.Render;
using OpenRA.Mods.RA.Activities; using OpenRA.Mods.RA.Activities;
using OpenRA.Traits; using OpenRA.Traits;
using OpenRA.Traits.Activities;
namespace OpenRA.Mods.RA namespace OpenRA.Mods.RA
{ {
@@ -36,9 +35,12 @@ namespace OpenRA.Mods.RA
void MaybeTransform(Actor self, Actor passenger, string transformTo) void MaybeTransform(Actor self, Actor passenger, string transformTo)
{ {
if (info.PassengerTypes.Contains(passenger.Info.Name) && transformTo != null) if (info.PassengerTypes.Contains(passenger.Info.Name) && transformTo != null)
{
self.World.AddFrameEndTask( w =>
{ {
self.CancelActivity(); self.CancelActivity();
self.QueueActivity( new Transform(self, transformTo) { Facing = self.Trait<IFacing>().Facing } ); self.QueueActivity( new Transform(self, transformTo) { Facing = self.Trait<IFacing>().Facing } );
});
} }
} }