From: js6pak Date: Thu, 7 Apr 2022 09:58:16 +0000 (+0200) Subject: Make GameOptionsData de/serialization less confusing X-Git-Tag: v1.7.0~8^2~1 X-Git-Url: https://git.deb.at/?a=commitdiff_plain;h=70c180fb1917fe8e7b203d50f5ca0b3fd3282df8;p=rhonda%2Fimpostor.git Make GameOptionsData de/serialization less confusing --- diff --git a/src/Impostor.Api/Innersloth/GameOptionsData.cs b/src/Impostor.Api/Innersloth/GameOptionsData.cs index a86058b..7c229d9 100644 --- a/src/Impostor.Api/Innersloth/GameOptionsData.cs +++ b/src/Impostor.Api/Innersloth/GameOptionsData.cs @@ -171,29 +171,33 @@ namespace Impostor.Api.Innersloth writer.Write((uint)VotingTime); writer.Write((bool)IsDefaults); - if (version > 1) + if (version >= 2) { writer.Write((byte)EmergencyCooldown); } - if (version > 2) + if (version >= 3) { writer.Write((bool)ConfirmImpostor); writer.Write((bool)VisualTasks); } - if (version > 3) + if (version >= 4) { writer.Write((bool)AnonymousVotes); writer.Write((byte)TaskBarUpdate); } - if (version > 4) + if (version >= 5) { RoleOptions.Serialize(writer); } - // V6 is equal to V5 + if (version >= 6) + { + // Nothing was changed in V6 + } + if (version > 6) { throw new ImpostorException($"Unknown GameOptionsData version {Version}."); @@ -239,29 +243,33 @@ namespace Impostor.Api.Innersloth IsDefaults = bytes.ReadBoolean(); - if (Version > 1) + if (Version >= 2) { EmergencyCooldown = bytes.ReadByte(); } - if (Version > 2) + if (Version >= 3) { ConfirmImpostor = bytes.ReadBoolean(); VisualTasks = bytes.ReadBoolean(); } - if (Version > 3) + if (Version >= 4) { AnonymousVotes = bytes.ReadBoolean(); TaskBarUpdate = (TaskBarUpdate)bytes.ReadByte(); } - if (Version > 4) + if (Version >= 5) { RoleOptions = RoleOptionsData.Deserialize(bytes); } - // V6 is equal to V5 + if (Version >= 6) + { + // Nothing was changed in V6 + } + if (Version > 6) { throw new ImpostorException($"Unknown GameOptionsData version {Version}.");