Extension method for reading/writing enums in netbuffers, (untested) classes for sending files
This commit is contained in:
18
Subsurface/Source/Networking/NetBufferExtensions.cs
Normal file
18
Subsurface/Source/Networking/NetBufferExtensions.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using Lidgren.Network;
|
||||
using System;
|
||||
|
||||
namespace Barotrauma.Networking
|
||||
{
|
||||
static class NetBufferExtensions
|
||||
{
|
||||
public static void WriteEnum(this NetBuffer buffer, Enum value)
|
||||
{
|
||||
buffer.WriteRangedInteger(0, Enum.GetValues(value.GetType()).Length - 1, Convert.ToInt32(value));
|
||||
}
|
||||
|
||||
public static TEnum ReadEnum<TEnum>(this NetBuffer buffer)
|
||||
{
|
||||
return (TEnum)(object)buffer.ReadRangedInteger(0, Enum.GetValues(typeof(TEnum)).Length - 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user