private static void HandleToServer(string source, MessageReader packet) { var tagName = TagMap.ContainsKey(packet.Tag) ? TagMap[packet.Tag] : "Unknown"; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine($"{source,-15} Server received: {packet.Tag,-2} {tagName}"); switch (packet.Tag) { case 0: Console.WriteLine("- GameInfo length " + packet.ReadBytesAndSize().Length); break; case 1: Console.WriteLine("- GameCode " + packet.ReadInt32()); Console.WriteLine("- Unknown " + packet.ReadByte()); break; case 5: case 6: Console.WriteLine("- GameCode " + packet.ReadInt32()); Console.WriteLine(HexUtils.HexDump(packet.Buffer.Take(packet.Length).ToArray())); packet.Position = packet.Length; break; } }
private static void HandleToClient(string source, IMessageReader packet) { var tagName = TagMap.ContainsKey(packet.Tag) ? TagMap[packet.Tag] : "Unknown"; Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine($"{source,-15} Client received: {packet.Tag,-2} {tagName}"); switch (packet.Tag) { case 14: case 13: // packet.Position = packet.Length; break; case 0: Console.WriteLine("- GameCode " + packet.ReadInt32()); break; case 5: case 6: Console.WriteLine(HexUtils.HexDump(packet.Buffer.ToArray().Take(packet.Length).ToArray())); // packet.Position = packet.Length; break; case 7: Console.WriteLine("- GameCode " + packet.ReadInt32()); Console.WriteLine("- PlayerId " + packet.ReadInt32()); Console.WriteLine("- Host " + packet.ReadInt32()); var playerCount = packet.ReadPackedInt32(); Console.WriteLine("- PlayerCount " + playerCount); for (var i = 0; i < playerCount; i++) { Console.WriteLine("- PlayerId " + packet.ReadPackedInt32()); } break; case 10: Console.WriteLine("- GameCode " + packet.ReadInt32()); Console.WriteLine("- Flag " + packet.ReadSByte()); Console.WriteLine("- Value " + packet.ReadBoolean()); break; } }