Add queued argument to CanIssueDeployOrder.

This commit is contained in:
Paul Chote
2020-02-20 20:51:13 +00:00
committed by abcdefg30
parent 2016ab105e
commit 84419e4259
9 changed files with 17 additions and 10 deletions

View File

@@ -155,7 +155,14 @@ namespace OpenRA.Mods.Common.Widgets
{
BindButtonIcon(deployButton);
deployButton.IsDisabled = () => { UpdateStateIfNecessary(); return !selectedDeploys.Any(pair => pair.Trait.CanIssueDeployOrder(pair.Actor)); };
deployButton.IsDisabled = () =>
{
UpdateStateIfNecessary();
var queued = Game.GetModifierKeys().HasModifier(Modifiers.Shift);
return !selectedDeploys.Any(pair => pair.Trait.CanIssueDeployOrder(pair.Actor, queued));
};
deployButton.IsHighlighted = () => deployHighlighted > 0;
deployButton.OnClick = () =>
{
@@ -338,7 +345,7 @@ namespace OpenRA.Mods.Common.Widgets
UpdateStateIfNecessary();
var orders = selectedDeploys
.Where(pair => pair.Trait.CanIssueDeployOrder(pair.Actor))
.Where(pair => pair.Trait.CanIssueDeployOrder(pair.Actor, queued))
.Select(d => d.Trait.IssueDeployOrder(d.Actor, queued))
.Where(d => d != null)
.ToArray();