Add ReturnToBase (F) support for aircraft; #1084

This commit is contained in:
Chris Forbes
2011-08-03 18:25:49 +12:00
parent 663a323f29
commit d3def71340
4 changed files with 23 additions and 3 deletions

View File

@@ -231,7 +231,14 @@ namespace OpenRA.Mods.RA.Air
public string VoicePhraseForOrder(Actor self, Order order)
{
return (order.OrderString == "Move" || order.OrderString == "Enter") ? "Move" : null;
switch( order.OrderString )
{
case "Move":
case "Enter":
case "ReturnToBase":
return "Move";
default: return null;
}
}
}

View File

@@ -76,6 +76,12 @@ namespace OpenRA.Mods.RA.Air
QueueResupplyActivities(order.TargetActor);
}
if (order.OrderString == "ReturnToBase")
{
self.CancelActivity();
self.QueueActivity( new HeliReturn() );
}
if (order.OrderString == "Stop")
{
self.CancelActivity();

View File

@@ -68,6 +68,12 @@ namespace OpenRA.Mods.RA.Air
UnReserve();
self.CancelActivity();
}
else if (order.OrderString == "ReturnToBase")
{
UnReserve();
self.CancelActivity();
self.QueueActivity(new ReturnToBase(self,null));
}
else
{
// Game.Debug("Unreserve due to unhandled order: {0}".F(order.OrderString));

View File

@@ -104,7 +104,8 @@ namespace OpenRA.Mods.RA.Widgets
bool PerformDeploy()
{
/* hack: two orders here -- DeployTransform and Unload. */
/* hack: three orders here -- DeployTransform and Unload. */
PerformKeyboardOrderOnSelection(a => new Order("ReturnToBase", a, false));
PerformKeyboardOrderOnSelection(a => new Order("DeployTransform", a, false));
PerformKeyboardOrderOnSelection(a => new Order("Unload", a, false));
return true;