1
Fork 0
mirror of https://github.com/Steffo99/better-tee.git synced 2024-11-22 23:34:18 +00:00
better-tee/Assets/Packages/Mirror/Runtime/NetworkMessage.cs
2019-09-17 17:43:32 +02:00

25 lines
768 B
C#

namespace Mirror
{
public struct NetworkMessage
{
public int msgType;
public NetworkConnection conn;
public NetworkReader reader;
public TMsg ReadMessage<TMsg>() where TMsg : IMessageBase, new()
{
// Normally I would just do:
// TMsg msg = new TMsg();
// but mono calls an expensive method Activator.CreateInstance
// For value types this is unnecesary, just use the default value
TMsg msg = typeof(TMsg).IsValueType ? default(TMsg) : new TMsg();
msg.Deserialize(reader);
return msg;
}
public void ReadMessage<TMsg>(TMsg msg) where TMsg : IMessageBase
{
msg.Deserialize(reader);
}
}
}