Pass IRobustSerializer to NetMessage (#11021)

This commit is contained in:
Leon Friedrich
2022-09-14 19:25:25 +12:00
committed by GitHub
parent cff6fe267c
commit feb50ce7cc
16 changed files with 52 additions and 48 deletions

View File

@@ -1,5 +1,6 @@
using Lidgren.Network;
using Robust.Shared.Network;
using Robust.Shared.Serialization;
namespace Content.Shared.Preferences
{
@@ -12,12 +13,12 @@ namespace Content.Shared.Preferences
public int Slot;
public override void ReadFromBuffer(NetIncomingMessage buffer)
public override void ReadFromBuffer(NetIncomingMessage buffer, IRobustSerializer serializer)
{
Slot = buffer.ReadInt32();
}
public override void WriteToBuffer(NetOutgoingMessage buffer)
public override void WriteToBuffer(NetOutgoingMessage buffer, IRobustSerializer serializer)
{
buffer.Write(Slot);
}

View File

@@ -1,4 +1,4 @@
using System.IO;
using System.IO;
using Lidgren.Network;
using Robust.Shared.Network;
using Robust.Shared.Serialization;
@@ -15,9 +15,8 @@ namespace Content.Shared.Preferences
public PlayerPreferences Preferences = default!;
public GameSettings Settings = default!;
public override void ReadFromBuffer(NetIncomingMessage buffer)
public override void ReadFromBuffer(NetIncomingMessage buffer, IRobustSerializer serializer)
{
var serializer = IoCManager.Resolve<IRobustSerializer>();
var length = buffer.ReadVariableInt32();
using (var stream = buffer.ReadAlignedMemory(length))
{
@@ -31,9 +30,8 @@ namespace Content.Shared.Preferences
}
}
public override void WriteToBuffer(NetOutgoingMessage buffer)
public override void WriteToBuffer(NetOutgoingMessage buffer, IRobustSerializer serializer)
{
var serializer = IoCManager.Resolve<IRobustSerializer>();
using (var stream = new MemoryStream())
{
serializer.SerializeDirect(stream, Preferences);

View File

@@ -1,5 +1,6 @@
using Lidgren.Network;
using Robust.Shared.Network;
using Robust.Shared.Serialization;
namespace Content.Shared.Preferences
{
@@ -12,12 +13,12 @@ namespace Content.Shared.Preferences
public int SelectedCharacterIndex;
public override void ReadFromBuffer(NetIncomingMessage buffer)
public override void ReadFromBuffer(NetIncomingMessage buffer, IRobustSerializer serializer)
{
SelectedCharacterIndex = buffer.ReadVariableInt32();
}
public override void WriteToBuffer(NetOutgoingMessage buffer)
public override void WriteToBuffer(NetOutgoingMessage buffer, IRobustSerializer serializer)
{
buffer.WriteVariableInt32(SelectedCharacterIndex);
}

View File

@@ -1,4 +1,4 @@
using System.IO;
using System.IO;
using Lidgren.Network;
using Robust.Shared.Network;
using Robust.Shared.Serialization;
@@ -15,19 +15,17 @@ namespace Content.Shared.Preferences
public int Slot;
public ICharacterProfile Profile = default!;
public override void ReadFromBuffer(NetIncomingMessage buffer)
public override void ReadFromBuffer(NetIncomingMessage buffer, IRobustSerializer serializer)
{
Slot = buffer.ReadInt32();
var serializer = IoCManager.Resolve<IRobustSerializer>();
var length = buffer.ReadVariableInt32();
using var stream = buffer.ReadAlignedMemory(length);
Profile = serializer.Deserialize<ICharacterProfile>(stream);
}
public override void WriteToBuffer(NetOutgoingMessage buffer)
public override void WriteToBuffer(NetOutgoingMessage buffer, IRobustSerializer serializer)
{
buffer.Write(Slot);
var serializer = IoCManager.Resolve<IRobustSerializer>();
using (var stream = new MemoryStream())
{
serializer.Serialize(stream, Profile);