public static void Prefix(NetworkReader reader) { if (!DevTools.Instance.Config.LoggingNetworkMessages) { return; } var newreader = NetworkReaderPool.GetReader(reader.buffer); newreader.Position = reader.Position; if (!MessagePacking.Unpack(newreader, out var key)) { return; } if (NetworkServer.handlers.TryGetValue(key, out var networkMessageDelegate) && networkMessageDelegate.Method.DeclaringType.IsGenericType) { string methodName = networkMessageDelegate.Method.DeclaringType.GetGenericArguments()[0].Name; if (methodName == "CommandMessage") { return; } if (DevTools.Instance.Config.DisabledLoggingNetworkMessages.Contains(methodName)) { return; } Log.Debug($"[Receiving: {methodName}]"); } NetworkReaderPool.Recycle(newreader); }
public void UnpackInvalidMessage() { // try an invalid message NetworkReader reader2 = new NetworkReader(new byte[0]); bool result2 = MessagePacking.Unpack(reader2, out ushort msgType2); Assert.That(result2, Is.EqualTo(false)); Assert.That(msgType2, Is.EqualTo(0)); }
public void TestUnpackMessageNonGeneric() { // try a regular message TestMessage message = new TestMessage() { IntValue = 42, StringValue = "Hello world" }; byte[] data = PackToByteArray(message); NetworkReader reader = new NetworkReader(data); bool result = MessagePacking.Unpack(reader, out ushort msgType); Assert.That(result, Is.EqualTo(true)); Assert.That(msgType, Is.EqualTo(BitConverter.ToUInt16(data, 0))); }
public void TestUnpackMessageNonGeneric() { // try a regular message SceneMessage message = new SceneMessage() { sceneName = "Hello world", sceneOperation = SceneOperation.LoadAdditive }; byte[] data = PackToByteArray(message); NetworkReader reader = new NetworkReader(data); bool result = MessagePacking.Unpack(reader, out ushort msgType); Assert.That(result, Is.EqualTo(true)); Assert.That(msgType, Is.EqualTo(BitConverter.ToUInt16(data, 0))); }