From: miniduikboot Date: Wed, 10 Nov 2021 22:04:21 +0000 (+0100) Subject: Remove initial state flag from InnerGameData X-Git-Tag: v1.7.0~17^2~16 X-Git-Url: https://git.deb.at/?a=commitdiff_plain;h=07697524073cc90651cada294c56d33eb8ae8b46;p=rhonda%2Fimpostor.git Remove initial state flag from InnerGameData --- diff --git a/src/Impostor.Server/Net/Inner/Objects/InnerGameData.cs b/src/Impostor.Server/Net/Inner/Objects/InnerGameData.cs index 922a0a0..d939fed 100644 --- a/src/Impostor.Server/Net/Inner/Objects/InnerGameData.cs +++ b/src/Impostor.Server/Net/Inner/Objects/InnerGameData.cs @@ -59,16 +59,18 @@ namespace Impostor.Server.Net.Inner.Objects return; } - if (initialState) + while (reader.Position < reader.Length) { - var num = reader.ReadPackedInt32(); - - for (var i = 0; i < num; i++) + var inner = reader.ReadMessage(); + var playerInfo = this.GetPlayerById(inner.Tag); + if (playerInfo != null) { - var playerId = reader.ReadByte(); - var playerInfo = new InnerPlayerInfo(playerId); - - playerInfo.Deserialize(reader); + playerInfo.Deserialize(inner); + } + else + { + playerInfo = new InnerPlayerInfo(inner.Tag); + playerInfo.Deserialize(inner); if (!_allPlayers.TryAdd(playerInfo.PlayerId, playerInfo)) { @@ -76,28 +78,6 @@ namespace Impostor.Server.Net.Inner.Objects } } } - else - { - while (reader.Position < reader.Length) - { - var inner = reader.ReadMessage(); - var playerInfo = this.GetPlayerById(inner.Tag); - if (playerInfo != null) - { - playerInfo.Deserialize(inner); - } - else - { - playerInfo = new InnerPlayerInfo(inner.Tag); - playerInfo.Deserialize(inner); - - if (!_allPlayers.TryAdd(playerInfo.PlayerId, playerInfo)) - { - throw new ImpostorException("Failed to add player to InnerGameData."); - } - } - } - } } public override async ValueTask HandleRpcAsync(ClientPlayer sender, ClientPlayer? target, RpcCalls call, IMessageReader reader)