]> git.deb.at Git - rhonda/impostor.git/commitdiff
2021.3.5
authorjs6pak <kubastaron@hotmail.com>
Fri, 5 Mar 2021 23:44:00 +0000 (00:44 +0100)
committerjs6pak <kubastaron@hotmail.com>
Fri, 5 Mar 2021 23:45:46 +0000 (00:45 +0100)
src/Impostor.Api/Innersloth/ChatType.cs [new file with mode: 0644]
src/Impostor.Api/Net/Messages/C2S/Message00HostGameC2S.cs
src/Impostor.Api/Net/Messages/C2S/Message01JoinGameC2S.cs
src/Impostor.Api/Net/Messages/C2S/Message16GetGameListC2S.cs
src/Impostor.Api/Net/Messages/S2C/Message16GetGameListS2C.cs
src/Impostor.Server/Net/Client.cs
src/Impostor.Server/Net/Manager/ClientManager.cs
src/Impostor.Server/Net/Redirector/ClientRedirector.cs

diff --git a/src/Impostor.Api/Innersloth/ChatType.cs b/src/Impostor.Api/Innersloth/ChatType.cs
new file mode 100644 (file)
index 0000000..087c2b7
--- /dev/null
@@ -0,0 +1,8 @@
+namespace Impostor.Api.Innersloth
+{
+    public enum ChatType
+    {
+        FreeChatOrQuickChat = 1,
+        QuickChatOnly = 2,
+    }
+}
index f90d7f53f7a3d990d57ec19b56e2fd850f403396..86679facce06468d44331254e8ea6facaf087955 100644 (file)
@@ -11,9 +11,12 @@ namespace Impostor.Api.Net.Messages.C2S
             writer.EndMessage();
         }
 
-        public static GameOptionsData Deserialize(IMessageReader reader)
+        public static GameOptionsData Deserialize(IMessageReader reader, out ChatType chatType)
         {
-            return GameOptionsData.DeserializeCreate(reader);
+            var gameOptionsData = GameOptionsData.DeserializeCreate(reader);
+            chatType = (ChatType)reader.ReadByte();
+
+            return gameOptionsData;
         }
     }
 }
index f121b97ea35c8590bd2e63e2198586562c3e8b39..4b2541494cb580e602f17787ea3864566acb18aa 100644 (file)
@@ -1,6 +1,4 @@
-using System;
-
-namespace Impostor.Api.Net.Messages.C2S
+namespace Impostor.Api.Net.Messages.C2S
 {
     public static class Message01JoinGameC2S
     {
@@ -9,12 +7,11 @@ namespace Impostor.Api.Net.Messages.C2S
             throw new System.NotImplementedException();
         }
 
-        public static void Deserialize(IMessageReader reader, out int gameCode, out byte unknown)
+        public static void Deserialize(IMessageReader reader, out int gameCode)
         {
-            var slice = reader.ReadBytes(sizeof(Int32) + sizeof(byte)).Span;
+            var slice = reader.ReadBytes(sizeof(int)).Span;
 
             gameCode = slice.ReadInt32();
-            unknown = slice.ReadByte();
         }
     }
-}
\ No newline at end of file
+}
index 2b7e12a76b7e45b1581e2d0f213dc749fc996d37..bc32d5eee68a2001a7038c6b0852da8f3bd6f0cf 100644 (file)
@@ -9,10 +9,11 @@ namespace Impostor.Api.Net.Messages.C2S
             throw new System.NotImplementedException();
         }
 
-        public static void Deserialize(IMessageReader reader, out GameOptionsData options)
+        public static void Deserialize(IMessageReader reader, out GameOptionsData options, out ChatType chatType)
         {
             reader.ReadPackedInt32(); // Hardcoded 0.
             options = GameOptionsData.DeserializeCreate(reader);
+            chatType = (ChatType)reader.ReadByte();
         }
     }
-}
\ No newline at end of file
+}
index 0d742edc71481692ac8cd95763428fa6dfc70e1e..7b641929bc5ee9e51b0cb4afe99c26f366b82247 100644 (file)
@@ -5,17 +5,10 @@ namespace Impostor.Api.Net.Messages.S2C
 {
     public class Message16GetGameListS2C
     {
-        public static void Serialize(IMessageWriter writer, int skeldGameCount, int miraHqGameCount, int polusGameCount, IEnumerable<IGame> games)
+        public static void Serialize(IMessageWriter writer, IEnumerable<IGame> games)
         {
             writer.StartMessage(MessageFlags.GetGameListV2);
 
-            // Count
-            writer.StartMessage(1);
-            writer.Write(skeldGameCount); // The Skeld
-            writer.Write(miraHqGameCount); // Mira HQ
-            writer.Write(polusGameCount); // Polus
-            writer.EndMessage();
-
             // Listing
             writer.StartMessage(0);
 
index 87fc56c3d99e56149e7e8a455e466772ab2de747..713ef8831551df9b695a140d2ccc83a80015981f 100644 (file)
@@ -63,7 +63,7 @@ namespace Impostor.Server.Net
                 case MessageFlags.HostGame:
                 {
                     // Read game settings.
-                    var gameInfo = Message00HostGameC2S.Deserialize(reader);
+                    var gameInfo = Message00HostGameC2S.Deserialize(reader, out _);
 
                     // Create game.
                     var game = await _gameManager.CreateAsync(gameInfo);
@@ -80,10 +80,7 @@ namespace Impostor.Server.Net
 
                 case MessageFlags.JoinGame:
                 {
-                    Message01JoinGameC2S.Deserialize(
-                        reader,
-                        out var gameCode,
-                        out _);
+                    Message01JoinGameC2S.Deserialize(reader, out var gameCode);
 
                     var game = _gameManager.Find(gameCode);
                     if (game == null)
@@ -248,7 +245,7 @@ namespace Impostor.Server.Net
 
                 case MessageFlags.GetGameListV2:
                 {
-                    Message16GetGameListC2S.Deserialize(reader, out var options);
+                    Message16GetGameListC2S.Deserialize(reader, out var options, out _);
                     await OnRequestGameListAsync(options);
                     break;
                 }
@@ -334,11 +331,7 @@ namespace Impostor.Server.Net
 
             var games = _gameManager.FindListings((MapFlags)options.Map, options.NumImpostors, options.Keywords);
 
-            var skeldGameCount = _gameManager.GetGameCount(MapFlags.Skeld);
-            var miraHqGameCount = _gameManager.GetGameCount(MapFlags.MiraHQ);
-            var polusGameCount = _gameManager.GetGameCount(MapFlags.Polus);
-
-            Message16GetGameListS2C.Serialize(message, skeldGameCount, miraHqGameCount, polusGameCount, games);
+            Message16GetGameListS2C.Serialize(message, games);
 
             return Connection.SendAsync(message);
         }
index cc7e46cd4a249924277597fd7f0d81729fda38fa..32359f8fb4c1c249326758c404c7927347c328eb 100644 (file)
@@ -20,9 +20,7 @@ namespace Impostor.Server.Net.Manager
     {
         private static HashSet<int> SupportedVersions { get; } = new HashSet<int>
         {
-            GameVersion.GetVersion(2020, 09, 07), // 2020.09.07 - 2020.09.22
-            GameVersion.GetVersion(2020, 10, 08), // 2020.10.08
-            GameVersion.GetVersion(2020, 11, 17), // 2020.11.17
+            GameVersion.GetVersion(2021, 3, 5), // 2021.3.5
         };
 
         private static string ServerBrand { get; } = $"Impostor {DotnetUtils.GetVersion()}";
@@ -108,4 +106,4 @@ namespace Impostor.Server.Net.Manager
                    && ReferenceEquals(client, registeredClient);
         }
     }
-}
\ No newline at end of file
+}
index bda07fda2e3641dcb32e76b097c91f442c1048eb..9a4edcc329f65e77ee23f38d411d7398890ec6e3 100644 (file)
@@ -54,10 +54,7 @@ namespace Impostor.Server.Net.Redirector
 
                 case MessageFlags.JoinGame:
                 {
-                    Message01JoinGameC2S.Deserialize(
-                        reader,
-                        out var gameCode,
-                        out _);
+                    Message01JoinGameC2S.Deserialize(reader, out var gameCode);
 
                     using var packet = MessageWriter.Get(MessageType.Reliable);
                     var endpoint = await _nodeLocator.FindAsync(GameCodeParser.IntToGameName(gameCode));
@@ -97,4 +94,4 @@ namespace Impostor.Server.Net.Redirector
             return default;
         }
     }
-}
\ No newline at end of file
+}