49 lines
1.1 KiB
C#
49 lines
1.1 KiB
C#
using System;
|
|
using PSO2SERVER.Models;
|
|
|
|
namespace PSO2SERVER.Packets.PSOPackets
|
|
{
|
|
public class SystemMessagePacket : Packet
|
|
{
|
|
public enum MessageType
|
|
{
|
|
GoldenTicker = 0,
|
|
AdminMessage,
|
|
AdminMessageInstant,
|
|
SystemMessage,
|
|
GenericMessage
|
|
}
|
|
|
|
private readonly string _message;
|
|
private readonly MessageType _type;
|
|
|
|
public SystemMessagePacket(string message, MessageType type)
|
|
{
|
|
_message = message;
|
|
_type = type;
|
|
}
|
|
|
|
#region implemented abstract members of Packet
|
|
|
|
public override byte[] Build()
|
|
{
|
|
var writer = new PacketWriter();
|
|
writer.WriteUtf16(_message, 0x78F7, 0xA2);
|
|
writer.Write((UInt32) _type);
|
|
|
|
return writer.ToArray();
|
|
}
|
|
|
|
public override PacketHeader GetHeader()
|
|
{
|
|
return new PacketHeader
|
|
{
|
|
Type = 0x19,
|
|
Subtype = 0x01,
|
|
Flags1 = 0x04
|
|
};
|
|
}
|
|
|
|
#endregion
|
|
}
|
|
} |