Move the checks into the Any to prevent units in a group from doing nothing

This commit is contained in:
abcdefg30
2016-07-12 19:15:04 +02:00
parent 756dc7c127
commit ba9fff3c6d

View File

@@ -100,10 +100,10 @@ namespace OpenRA.Mods.Common.Widgets
bool PerformAttackMove()
{
var actors = world.Selection.Actors
.Where(a => a.Owner == world.LocalPlayer && a.Info.HasTraitInfo<AttackMoveInfo>() && a.Info.HasTraitInfo<AutoTargetInfo>())
.Where(a => a.Owner == world.LocalPlayer)
.ToArray();
if (actors.Any())
if (actors.Any(a => a.Info.HasTraitInfo<AttackMoveInfo>() && a.Info.HasTraitInfo<AutoTargetInfo>()))
world.OrderGenerator = new GenericSelectTarget(actors,
"AttackMove", "attackmove", Game.Settings.Game.MouseButtonPreference.Action);
@@ -183,9 +183,9 @@ namespace OpenRA.Mods.Common.Widgets
bool PerformGuard()
{
var actors = world.Selection.Actors
.Where(a => !a.Disposed && a.Owner == world.LocalPlayer && a.Info.HasTraitInfo<GuardInfo>() && a.Info.HasTraitInfo<AutoTargetInfo>());
.Where(a => !a.Disposed && a.Owner == world.LocalPlayer);
if (actors.Any())
if (actors.Any(a => a.Info.HasTraitInfo<GuardInfo>() && a.Info.HasTraitInfo<AutoTargetInfo>()))
world.OrderGenerator = new GuardOrderGenerator(actors,
"Guard", "guard", Game.Settings.Game.MouseButtonPreference.Action);