diff --git a/OpenRA.Mods.Common/Lint/CheckPlayers.cs b/OpenRA.Mods.Common/Lint/CheckPlayers.cs index fa151cd05b..9702b272a6 100644 --- a/OpenRA.Mods.Common/Lint/CheckPlayers.cs +++ b/OpenRA.Mods.Common/Lint/CheckPlayers.cs @@ -59,9 +59,17 @@ namespace OpenRA.Mods.Common.Lint foreach (var kv in map.ActorDefinitions) { var actorReference = new ActorReference(kv.Value.Value, kv.Value.ToDictionary()); - var ownerName = actorReference.InitDict.Get().PlayerName; - if (!playerNames.Contains(ownerName)) - emitError("Actor {0} is owned by unknown player {1}.".F(actorReference.Type, ownerName)); + var ownerInit = actorReference.InitDict.GetOrDefault(); + if (ownerInit == null) + { + emitError("Actor {0} is not owned by any player.".F(kv.Key)); + } + else + { + var ownerName = ownerInit.PlayerName; + if (!playerNames.Contains(ownerName)) + emitError("Actor {0} is owned by unknown player {1}.".F(actorReference.Type, ownerName)); + } } } }