diff --git a/TF2Net/NetMessageCoder.cs b/TF2Net/NetMessageCoder.cs index f38517f..13cc2ca 100644 --- a/TF2Net/NetMessageCoder.cs +++ b/TF2Net/NetMessageCoder.cs @@ -64,6 +64,8 @@ static INetMessage CreateNetMessage(NetMessageType type) case NetMessageType.SVC_GAMEEVENTLIST: return new NetGameEventListMessage(); + case NetMessageType.SVC_UNKNKOWN_34: return new SomeBitMessage(10); + default: throw new NotImplementedException(string.Format("Unimplemented {0} \"{1}\"", typeof(NetMessageType).Name, type)); } } diff --git a/TF2Net/NetMessages/NetMessageType.cs b/TF2Net/NetMessages/NetMessageType.cs index f456b08..5c63b05 100644 --- a/TF2Net/NetMessages/NetMessageType.cs +++ b/TF2Net/NetMessages/NetMessageType.cs @@ -34,5 +34,8 @@ enum NetMessageType : byte SVC_MENU = 29, SVC_GAMEEVENTLIST = 30, SVC_GETCVARVALUE = 31, - } + // 32 + // 33 + SVC_UNKNKOWN_34 = 34, + } } diff --git a/TF2Net/NetMessages/SomeBitMessage.cs b/TF2Net/NetMessages/SomeBitMessage.cs new file mode 100644 index 0000000..377a55f --- /dev/null +++ b/TF2Net/NetMessages/SomeBitMessage.cs @@ -0,0 +1,32 @@ +using System; +using System.Linq; +using BitSet; +using TF2Net.Data; + +namespace TF2Net.NetMessages +{ + internal class SomeBitMessage : INetMessage + { + private readonly int _bitCount; + + public SomeBitMessage(int bitCount) + { + _bitCount = bitCount; + } + + public string Description => _bitCount + " bit message"; + + public void ReadMsg(BitStream stream) + { + foreach (int i in Enumerable.Range(1, _bitCount)) + { + stream.ReadBool(); + } + } + + public void ApplyWorldState(WorldState ws) + { + throw new NotImplementedException(); + } + } +} diff --git a/TF2Net/TF2Net.csproj b/TF2Net/TF2Net.csproj index e8b6ff3..2e530fb 100644 --- a/TF2Net/TF2Net.csproj +++ b/TF2Net/TF2Net.csproj @@ -72,6 +72,7 @@ +