Fix a crash with support powers and units without selection decorations

This commit is contained in:
abcdefg30
2020-06-02 11:57:11 +02:00
committed by Paul Chote
parent 534b09ae4a
commit fb27a25e52
2 changed files with 9 additions and 6 deletions

View File

@@ -192,8 +192,9 @@ namespace OpenRA.Mods.Cnc.Traits
if (unit.CanBeViewedByPlayer(manager.Self.Owner)) if (unit.CanBeViewedByPlayer(manager.Self.Owner))
{ {
var decorations = unit.TraitsImplementing<ISelectionDecorations>().FirstEnabledTraitOrDefault(); var decorations = unit.TraitsImplementing<ISelectionDecorations>().FirstEnabledTraitOrDefault();
foreach (var d in decorations.RenderSelectionAnnotations(unit, wr, Color.Red)) if (decorations != null)
yield return d; foreach (var d in decorations.RenderSelectionAnnotations(unit, wr, Color.Red))
yield return d;
} }
} }
} }
@@ -318,8 +319,9 @@ namespace OpenRA.Mods.Cnc.Traits
if (unit.CanBeViewedByPlayer(manager.Self.Owner)) if (unit.CanBeViewedByPlayer(manager.Self.Owner))
{ {
var decorations = unit.TraitsImplementing<ISelectionDecorations>().FirstEnabledTraitOrDefault(); var decorations = unit.TraitsImplementing<ISelectionDecorations>().FirstEnabledTraitOrDefault();
foreach (var d in decorations.RenderSelectionAnnotations(unit, wr, Color.Red)) if (decorations != null)
yield return d; foreach (var d in decorations.RenderSelectionAnnotations(unit, wr, Color.Red))
yield return d;
} }
} }
} }

View File

@@ -155,8 +155,9 @@ namespace OpenRA.Mods.Common.Traits
foreach (var unit in power.UnitsInRange(xy)) foreach (var unit in power.UnitsInRange(xy))
{ {
var decorations = unit.TraitsImplementing<ISelectionDecorations>().FirstEnabledTraitOrDefault(); var decorations = unit.TraitsImplementing<ISelectionDecorations>().FirstEnabledTraitOrDefault();
foreach (var d in decorations.RenderSelectionAnnotations(unit, wr, Color.Red)) if (decorations != null)
yield return d; foreach (var d in decorations.RenderSelectionAnnotations(unit, wr, Color.Red))
yield return d;
} }
} }