continuity/Continuity.AuthServer/Packets/RawPacket.cs
Timothy Schenk 3a24dabdf2
chore: formatting and slnx
Signed-off-by: Timothy Schenk <admin@rainote.dev>
2025-01-16 14:30:40 +01:00

35 lines
1.1 KiB
C#

// Licensed to Timothy Schenk under the GNU AGPL Version 3 License.
using MassTransit;
using Wonderking.Packets;
namespace Continuity.AuthServer.Packets;
[MessageUrn("packets")]
public class RawPacket {
public RawPacket(OperationCode operationCode, Span<byte> messageBody, uint aliveTime, byte unknownValue2,
byte unknownValue, Guid sessionId, AuthSession session) {
MessageBody = messageBody.ToArray();
UnknownValue2 = unknownValue2;
UnknownValue = unknownValue;
SessionId = sessionId;
Session = session;
OperationCode = operationCode;
/*
* 20s = 5
* 15s = 4
* 10s = 3
* client alive time * 5s => uptime
*/
ClientAliveTime = TimeSpan.FromSeconds(5 * aliveTime);
}
public OperationCode OperationCode { get; }
public byte[] MessageBody { get; }
public TimeSpan ClientAliveTime { get; }
public byte UnknownValue { get; }
public byte UnknownValue2 { get; }
public Guid SessionId { get; }
public AuthSession Session { get; }
}