From bcc32d15ed4c28a0362bfe3d9cb35f5be34be71d Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Sat, 19 Jul 2014 12:56:52 +1200 Subject: [PATCH] Fix frozen actors being targetable under shroud. Fixes #5979, #5978. --- OpenRA.Game/Orders/UnitOrderGenerator.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OpenRA.Game/Orders/UnitOrderGenerator.cs b/OpenRA.Game/Orders/UnitOrderGenerator.cs index 559ad1fcd6..23324f8171 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.Traits.Contains()) + .Where(a => a.Info.Traits.Contains() && !a.Footprint.All(c => world.ShroudObscures(c))) .WithHighestSelectionPriority(); target = frozen != null ? Target.FromFrozenActor(frozen) : Target.FromCell(world, xy); } @@ -74,7 +74,7 @@ namespace OpenRA.Orders else { var frozen = world.ScreenMap.FrozenActorsAt(world.RenderPlayer, mi) - .Where(a => a.Info.Traits.Contains()) + .Where(a => a.Info.Traits.Contains() && !a.Footprint.All(c => world.ShroudObscures(c))) .WithHighestSelectionPriority(); target = frozen != null ? Target.FromFrozenActor(frozen) : Target.FromCell(world, xy); }