/// <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 }); }
/// <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 }); }
protected virtual void Format10Handler(TClient client, ClientFormat10 format) { }