/// <summary>
        ///     Redirect Client from Lobby Server to Login Server Automatically.
        /// </summary>
        protected override void Format10Handler(LoginClient client, ClientFormat10 format)
        {
            var redirect = ServerContext.GlobalRedirects.FirstOrDefault(o => o.Serial == format.Id);

            if (redirect == null)
            {
                ClientDisconnected(client);
                return;
            }

            if (redirect.Type == 2)
            {
                ServerContext.Game.RemoveClient(redirect.Client);
            }

            client.Encryption.Parameters = new SecurityParameters(redirect.Seed, redirect.Salt);
            client.Send(new ServerFormat60
            {
                Type = 0x00,
                Hash = Notification.Hash
            });
            ServerContext.GlobalRedirects.Remove(redirect);

            client.SendPacket(new byte[]
            {
                0x19, 0x00, 0xFF, 0x31
            });
        }
Example #2
0
 /// <summary>
 ///     Redirect Client from Lobby Client to Login Client Automatically.
 /// </summary>
 protected override void Format10Handler(LoginClient client, ClientFormat10 format)
 {
     client.Encryption.Parameters = format.Parameters;
     client.Send(new ServerFormat60
     {
         Type = 0x00,
         Hash = Notification.Hash
     });
 }
Example #3
0
 protected virtual void Format10Handler(TClient client, ClientFormat10 format)
 {
 }