protected override void OnClientConnected(TcpClient client) { base.OnClientConnected(client); AuthClient auth = new AuthClient(client); auth.ClientDisconnected += OnClientDisconnected; Clients.Add(auth); }
public int GetPosition(AuthClient client) { if (queue.ToList().Contains(client)) { return queue.ToList().IndexOf(client); } return -1; }
public AuthentificationManager(AuthClient client) { this.client = client; servers = new ServersManager(client); client.Dispatcher.Register(this); SayHello(); }
public ServersManager(AuthClient client) { this.client = client; client.Dispatcher.Register(this); }
public void Enqueue(AuthClient client) { client.State = AuthClientStateEnum.IN_QUEUE; queue.Enqueue(client); UpdatePosition(); }
public void Dequeue(AuthClient client) { client.Authentification.CheckAccount(); }
private void UpdatePosition(AuthClient client) { if (queue.Count > 0) { client.Send(new LoginQueueStatusMessage((ushort)GetPosition(client), (ushort)queue.Count)); } }