mirror of
https://github.com/space-wizards/RobustToolbox.git
synced 2026-02-15 03:30:53 +01:00
Add a few extension methods to ease netmessage serialization.
This commit is contained in:
37
SS14.Shared/Network/NetMessageExt.cs
Normal file
37
SS14.Shared/Network/NetMessageExt.cs
Normal file
@@ -0,0 +1,37 @@
|
||||
using Lidgren.Network;
|
||||
using SS14.Shared.Map;
|
||||
using SS14.Shared.Maths;
|
||||
|
||||
namespace SS14.Shared.Network
|
||||
{
|
||||
public static class NetMessageExt
|
||||
{
|
||||
public static GridLocalCoordinates ReadGridLocalCoordinates(this NetIncomingMessage message)
|
||||
{
|
||||
var gridId = new GridId(message.ReadInt32());
|
||||
var vector = message.ReadVector2();
|
||||
|
||||
return new GridLocalCoordinates(vector, gridId);
|
||||
}
|
||||
|
||||
public static void Write(this NetOutgoingMessage message, GridLocalCoordinates coordinates)
|
||||
{
|
||||
message.Write(coordinates.GridID.Value);
|
||||
message.Write(coordinates.Position);
|
||||
}
|
||||
|
||||
public static Vector2 ReadVector2(this NetIncomingMessage message)
|
||||
{
|
||||
var x = message.ReadFloat();
|
||||
var y = message.ReadFloat();
|
||||
|
||||
return new Vector2(x, y);
|
||||
}
|
||||
|
||||
public static void Write(this NetOutgoingMessage message, Vector2 vector2)
|
||||
{
|
||||
message.Write(vector2.X);
|
||||
message.Write(vector2.Y);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -220,6 +220,7 @@
|
||||
<Compile Include="Network\NetChannel.cs" />
|
||||
<Compile Include="Network\NetMessage.cs" />
|
||||
<Compile Include="Network\NetManager.cs" />
|
||||
<Compile Include="Network\NetMessageExt.cs" />
|
||||
<Compile Include="Network\NetSessionId.cs" />
|
||||
<Compile Include="Network\StringTable.cs" />
|
||||
<Compile Include="Physics\PhysicsManager.cs" />
|
||||
|
||||
Reference in New Issue
Block a user