diff --git a/OpenRA.Mods.Common/Lint/CheckPalettes.cs b/OpenRA.Mods.Common/Lint/CheckPalettes.cs index c35f8ada09..25e62bb849 100644 --- a/OpenRA.Mods.Common/Lint/CheckPalettes.cs +++ b/OpenRA.Mods.Common/Lint/CheckPalettes.cs @@ -121,25 +121,24 @@ namespace OpenRA.Mods.Common.Lint void GetPalettes(Ruleset rules, List palettes, List playerPalettes) { - foreach (var actorInfo in rules.Actors) + // Palettes are only defined on the world actor + var worldActorInfo = rules.Actors[SystemActors.World]; + foreach (var traitInfo in worldActorInfo.TraitInfos()) { - foreach (var traitInfo in actorInfo.Value.TraitInfos()) + var fields = traitInfo.GetType().GetFields(); + foreach (var field in fields) { - var fields = traitInfo.GetType().GetFields(); - foreach (var field in fields) - { - var paletteDefinition = field.GetCustomAttributes(true).FirstOrDefault(); - if (paletteDefinition == null) - continue; + var paletteDefinition = field.GetCustomAttributes(true).FirstOrDefault(); + if (paletteDefinition == null) + continue; - var values = LintExts.GetFieldValues(traitInfo, field); - foreach (var value in values) - { - if (paletteDefinition.IsPlayerPalette) - playerPalettes.Add(value); - else - palettes.Add(value); - } + var values = LintExts.GetFieldValues(traitInfo, field); + foreach (var value in values) + { + if (paletteDefinition.IsPlayerPalette) + playerPalettes.Add(value); + else + palettes.Add(value); } } }