コード例 #1
0
ファイル: AuthServer.cs プロジェクト: Riul/emulator
 protected override void OnClientConnected(TcpClient client)
 {
     base.OnClientConnected(client);
     AuthClient auth = new AuthClient(client);
     auth.ClientDisconnected += OnClientDisconnected;
     Clients.Add(auth);
 }
コード例 #2
0
ファイル: QueueManager.cs プロジェクト: Riul/emulator
 public int GetPosition(AuthClient client)
 {
     if (queue.ToList().Contains(client))
     {
         return queue.ToList().IndexOf(client);
     }
     return -1;
 }
コード例 #3
0
        public AuthentificationManager(AuthClient client)
        {
            this.client = client;
            servers = new ServersManager(client);
            client.Dispatcher.Register(this);

            SayHello();
        }
コード例 #4
0
ファイル: ServersManager.cs プロジェクト: Riul/emulator
 public ServersManager(AuthClient client)
 {
     this.client = client;
     client.Dispatcher.Register(this);
 }
コード例 #5
0
ファイル: QueueManager.cs プロジェクト: Riul/emulator
 public void Enqueue(AuthClient client)
 {
     client.State = AuthClientStateEnum.IN_QUEUE;
     queue.Enqueue(client);
     UpdatePosition();
 }
コード例 #6
0
ファイル: QueueManager.cs プロジェクト: Riul/emulator
 public void Dequeue(AuthClient client)
 {
     client.Authentification.CheckAccount();
 }
コード例 #7
0
ファイル: QueueManager.cs プロジェクト: Riul/emulator
 private void UpdatePosition(AuthClient client)
 {
     if (queue.Count > 0)
     {
         client.Send(new LoginQueueStatusMessage((ushort)GetPosition(client), (ushort)queue.Count));
     }
 }