Esempio n. 1
0
        private async Task WaitUntilFull()
        {
            var lobbyLifetime = new Lifetime();

            this.Options.Server.Connections.Changed.SubscribeForLifetime(() =>
            {
                if (Options.Server.Connections.Count == Options.MaxPlayers)
                {
                    lobbyLifetime.Dispose();
                }
            }, lobbyLifetime);

            await lobbyLifetime.AwaitEndOfLifetime();

            await Options.Server.CloseForNewConnections().AsAwaitable();
        }