Extension method for reading/writing enums in netbuffers, (untested) classes for sending files

This commit is contained in:
Regalis11
2016-02-24 15:45:45 +02:00
parent c613e5fcf8
commit 6f51c6fb33
10 changed files with 270 additions and 128 deletions

View 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);
}
}
}