diff --git a/OpenRA.Game/Traits/Player/FrozenActorLayer.cs b/OpenRA.Game/Traits/Player/FrozenActorLayer.cs index 3a6e5bd19e..c780f7ccb6 100755 --- a/OpenRA.Game/Traits/Player/FrozenActorLayer.cs +++ b/OpenRA.Game/Traits/Player/FrozenActorLayer.cs @@ -54,13 +54,15 @@ namespace OpenRA.Traits int flashTicks; public void Tick(World world, Shroud shroud) { - Visible = false; + Visible = true; foreach (var pos in Footprint) + { if (shroud.IsVisible(pos)) { - Visible = true; + Visible = false; break; } + } if (flashTicks > 0) flashTicks--; diff --git a/OpenRA.Mods.RA/Modifiers/FrozenUnderFog.cs b/OpenRA.Mods.RA/Modifiers/FrozenUnderFog.cs index 687e7b44d3..7ecdef1d1b 100644 --- a/OpenRA.Mods.RA/Modifiers/FrozenUnderFog.cs +++ b/OpenRA.Mods.RA/Modifiers/FrozenUnderFog.cs @@ -65,11 +65,13 @@ namespace OpenRA.Mods.RA { var isVisible = false; foreach (var pos in footprint) + { if (p.Shroud.IsVisible(pos)) { isVisible = true; break; } + } visible[p] = isVisible; if (isVisible) VisibilityHash += p.ClientIndex;