]> git.deb.at Git - rhonda/impostor.git/commitdiff
Make GameOptionsData de/serialization less confusing
authorjs6pak <kubastaron@hotmail.com>
Thu, 7 Apr 2022 09:58:16 +0000 (11:58 +0200)
committerjs6pak <kubastaron@hotmail.com>
Thu, 7 Apr 2022 09:58:16 +0000 (11:58 +0200)
src/Impostor.Api/Innersloth/GameOptionsData.cs

index a86058bf459e917e6dacebf61c365cb7651cb202..7c229d9d2227573d70a2613070aa44fa1b6db9b0 100644 (file)
@@ -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}.");