Beispiel #1
0
        private async Task CheckClientsAvailable()
        {
            while (true)
            {
                var notAvailableClients = _clientManager.GetNotAvailableClients(_config.AllowedClientTimeOut);

                await _clientManager.DisconnectAsync(notAvailableClients, "Connection timeout");

                _gameStateManager.RemovePlayers(notAvailableClients.Select(client => client.Id));

                await Task.Delay(_config.CheckClientsAvailableFrequency);
            }
        }