diff --git a/OpenRA.Mods.RA/Widgets/Logic/LobbyUtils.cs b/OpenRA.Mods.RA/Widgets/Logic/LobbyUtils.cs index 3ebfae85f0..c306b67e82 100644 --- a/OpenRA.Mods.RA/Widgets/Logic/LobbyUtils.cs +++ b/OpenRA.Mods.RA/Widgets/Logic/LobbyUtils.cs @@ -150,14 +150,15 @@ namespace OpenRA.Mods.RA.Widgets.Logic { var spawns = preview.SpawnPoints; return lobbyInfo.Clients - .Where(c => c.SpawnPoint != 0) + .Where(c => (c.SpawnPoint - 1 >= 0) && (c.SpawnPoint - 1 < spawns.Count)) .ToDictionary(c => spawns[c.SpawnPoint - 1], c => new SpawnOccupant(c)); } + public static Dictionary GetSpawnOccupants(IEnumerable players, MapPreview preview) { var spawns = preview.SpawnPoints; return players - .Where(c => c.SpawnPoint != 0) + .Where(c => (c.SpawnPoint - 1 >= 0) && (c.SpawnPoint - 1 < spawns.Count)) .ToDictionary(c => spawns[c.SpawnPoint - 1], c => new SpawnOccupant(c)); }