Files
crysome/Crysome.Common/Crysome.Common.Network.FileTransfer/FtSackPacket.cs
T
2026-08-27 11:22:54 -06:00

39 lines
776 B
C#

using System;
using System.IO;
using Crysome.Common.Network.Packets;
namespace Crysome.Common.Network.FileTransfer;
public sealed class FtSackPacket : IPacket
{
public uint TransferId;
public int HighestContiguous;
public int[] NackList;
public void Write(BinaryWriter w)
{
w.Write(TransferId);
w.Write(HighestContiguous);
short num = (short)((NackList != null) ? Math.Min(NackList.Length, 128) : 0);
w.Write(num);
for (int i = 0; i < num; i++)
{
w.Write(NackList[i]);
}
}
public void Read(BinaryReader r)
{
TransferId = r.ReadUInt32();
HighestContiguous = r.ReadInt32();
int num = r.ReadInt16();
NackList = new int[num];
for (int i = 0; i < num; i++)
{
NackList[i] = r.ReadInt32();
}
}
}