private void ShowBonus()
    {
        if (_bonusPause)
        {
            return;
        }

        if (_stack.Count > 0)
        {
            if (SetBonusAction != null)
            {
                if (SetBonusAction(_stack[0].Type))
                {
                    _stack[0].State          = BonusModel.BonusState.OnField;
                    _stack[0].OnFinishAction = RemoveBonus;
                    _stack[0].Start(WAIT_COOL_DOWN);
                    _stack.RemoveAt(0);
                }
            }

            _bonusPause = true;

            _bonusPauseTimer.StartTimer(BONUS_PAUSE, null, PauseFinished);
        }
    }
    private void ResourcesLoaded()
    {
        if (_transitionInfo != null)
        {
            _bonusController = new BonusController();
            _bonusController.Initialize(_timerProvider, _transitionInfo.BonusTypes, OnSetBonus, OnRemoveBonus);
        }
        _roundTimer = _timerProvider.Get();

        FeatureInitializeFinish();

        _roundTimer.StartTimer(_config.GetGameTime(), UpdateTimer, FinishTimer);
        _bonusController.Start();
    }
Пример #3
0
 public void Start(int time)
 {
     _timer.StopTimer();
     _timer.StartTimer(time, null, Finish);
 }