Пример #1
0
        public void StartSendValidationsTimer(Guid gameId, int roundNumber, string theme)
        {
            TimerContext gameTimerContext = CreateGameTimerContext(gameId, roundNumber, Consts.SEND_VALIDATIONS_LIMIT_TIME);
            Timer        validationTimer  = new Timer((context) =>
            {
                TimerContext timerContext = (TimerContext)context;
                if (timerContext.IsLimitTimeReached())
                {
                    RemoveGameTimer(gameId);
                    OnSendValidationTimeOver(gameId, roundNumber, theme);
                }

                timerContext.ElapsedTime++;
            }, gameTimerContext, 500, 1000);

            AddOrUpdateGameTimer(gameId, validationTimer);
        }
Пример #2
0
        public void StartSendAnswersTimer(Guid gameId, int roundNumber)
        {
            TimerContext gameTimerContext = CreateGameTimerContext(gameId, roundNumber, Consts.SEND_ANSWERS_LIMIT_TIME);
            Timer        sendAnswersTimer = new Timer((context) =>
            {
                TimerContext timerContext = (TimerContext)context;
                if (timerContext.IsLimitTimeReached())
                {
                    RemoveGameTimer(gameId);
                    OnSendAnswersTimeOver(gameId, roundNumber, _gameHub);
                }

                timerContext.ElapsedTime++;
            }, gameTimerContext, 1500, 1000);

            AddOrUpdateGameTimer(gameId, sendAnswersTimer);
        }
Пример #3
0
        public void StartValidationTimer(Guid gameId, int roundNumber, string theme)
        {
            TimerContext gameTimerContext = CreateGameTimerContext(gameId, roundNumber, Consts.VALIDATION_LIMIT_TIME);
            Timer        validationTimer  = new Timer((context) =>
            {
                TimerContext timerContext = (TimerContext)context;
                if (timerContext.IsLimitTimeReached())
                {
                    RemoveGameTimer(gameId);
                    OnValidationTimeOver(gameId, roundNumber, theme, _gameHub);
                }
                else
                {
                    OnValidationTimeElapsed(gameId, roundNumber, ++timerContext.ElapsedTime, theme, _gameHub);
                }
            }, gameTimerContext, 500, 1000);

            AddOrUpdateGameTimer(gameId, validationTimer);
        }