diff --git a/OpenRA.Game/Orders/UnitOrderGenerator.cs b/OpenRA.Game/Orders/UnitOrderGenerator.cs index bf4fcb8f98..6636c8db58 100644 --- a/OpenRA.Game/Orders/UnitOrderGenerator.cs +++ b/OpenRA.Game/Orders/UnitOrderGenerator.cs @@ -29,7 +29,7 @@ namespace OpenRA.Orders else { var frozen = world.ScreenMap.FrozenActorsAt(world.RenderPlayer, mi) - .Where(a => a.Info.HasTraitInfo() && !a.Footprint.All(world.ShroudObscures)) + .Where(a => a.Info.HasTraitInfo() && a.Visible && a.HasRenderables) .WithHighestSelectionPriority(); target = frozen != null ? Target.FromFrozenActor(frozen) : Target.FromCell(world, xy); } @@ -73,7 +73,7 @@ namespace OpenRA.Orders else { var frozen = world.ScreenMap.FrozenActorsAt(world.RenderPlayer, mi) - .Where(a => a.Info.HasTraitInfo() && !a.Footprint.All(world.ShroudObscures)) + .Where(a => a.Info.HasTraitInfo() && a.Visible && a.HasRenderables) .WithHighestSelectionPriority(); target = frozen != null ? Target.FromFrozenActor(frozen) : Target.FromCell(world, xy); }