using System;
using System.IO;
using PSO2SERVER.Protocol.Packets;

namespace PSO2SERVER.Protocol.Handlers
{
    [PacketHandlerAttr(0x11, 0x0D)]
    public class ClientPing : PacketHandler
    {
        #region implemented abstract members of PacketHandler

        public override void HandlePacket(Client context, byte flags, byte[] data, uint position, uint size)
        {
            //var info = string.Format("[<--] 接收到的数据 (hex): {0} 字节", data.Length);
            //Logger.WriteHex(info, data);
            var reader = new PacketReader(data, position, size);
            var clientTime = reader.ReadUInt64();

            var serverTime = Helper.Timestamp(DateTime.UtcNow);

            context.SendPacket(new ClientPongPacket(clientTime, serverTime));
        }

        #endregion
    }
}
