mirror of
https://github.com/simtactics/mysimulation.git
synced 2025-03-23 09:52:23 +00:00
34 lines
1.1 KiB
C#
34 lines
1.1 KiB
C#
|
using FSO.Common.Serialization;
|
|||
|
using FSO.Server.Protocol.Voltron.Model;
|
|||
|
using Mina.Core.Buffer;
|
|||
|
|
|||
|
namespace FSO.Server.Protocol.Voltron
|
|||
|
{
|
|||
|
public abstract class AbstractVoltronPacket : IVoltronPacket
|
|||
|
{
|
|||
|
public static Sender GetSender(IoBuffer buffer)
|
|||
|
{
|
|||
|
var ariesID = buffer.GetPascalString();
|
|||
|
var masterID = buffer.GetPascalString();
|
|||
|
return new Sender { AriesID = ariesID, MasterAccountID = masterID };
|
|||
|
}
|
|||
|
|
|||
|
public static void PutSender(IoBuffer buffer, Sender sender)
|
|||
|
{
|
|||
|
buffer.PutPascalString(sender.AriesID);
|
|||
|
buffer.PutPascalString(sender.MasterAccountID);
|
|||
|
}
|
|||
|
|
|||
|
public static IoBuffer Allocate(int size)
|
|||
|
{
|
|||
|
IoBuffer buffer = IoBuffer.Allocate(size);
|
|||
|
buffer.Order = ByteOrder.BigEndian;
|
|||
|
return buffer;
|
|||
|
}
|
|||
|
|
|||
|
public abstract VoltronPacketType GetPacketType();
|
|||
|
public abstract void Serialize(IoBuffer output, ISerializationContext context);
|
|||
|
public abstract void Deserialize(IoBuffer input, ISerializationContext context);
|
|||
|
}
|
|||
|
}
|