From 1e49828385301195b8f8116548e2f97053238534 Mon Sep 17 00:00:00 2001 From: devbeni Date: Sat, 13 Dec 2025 14:30:48 +0100 Subject: [PATCH] player list fix idk --- Packets/Lobby/PlayerList.cs | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/Packets/Lobby/PlayerList.cs b/Packets/Lobby/PlayerList.cs index 3597da8..b2a609f 100644 --- a/Packets/Lobby/PlayerList.cs +++ b/Packets/Lobby/PlayerList.cs @@ -35,13 +35,16 @@ namespace KCM.Packets.Lobby Main.helper.Log("PlayerList: " + playersName[i] + " " + playersId[i] + " " + steamIds[i]); - Main.kCPlayers.Add(steamIds[i], new KCPlayer(playersName[i], playersId[i], steamIds[i]) + if (!Main.kCPlayers.TryGetValue(steamIds[i], out var player) || player == null) { - name = playersName[i], - ready = playersReady[i], - banner = playersBanner[i], - kingdomName = playersKingdomName[i] - }); + player = new KCPlayer(playersName[i], playersId[i], steamIds[i]); + Main.kCPlayers[steamIds[i]] = player; + } + + player.name = playersName[i]; + player.ready = playersReady[i]; + player.banner = playersBanner[i]; + player.kingdomName = playersKingdomName[i]; if (Main.clientSteamIds.ContainsKey(playersId[i])) @@ -49,7 +52,8 @@ namespace KCM.Packets.Lobby else Main.clientSteamIds.Add(playersId[i], steamIds[i]); - Main.kCPlayers[steamIds[i]].inst.PlayerLandmassOwner.SetBannerIdx(playersBanner[i]); + if (player.inst != null && player.inst.PlayerLandmassOwner != null) + player.inst.PlayerLandmassOwner.SetBannerIdx(playersBanner[i]); LobbyHandler.AddPlayerEntry(playersId[i]); }