Exemplo n.º 1
0
    private void ShowTrainingStep(int step)
    {
        switch (step)
        {
            case 0:
                if (IsTrainingFinished())
                {
                    gameObject.SetActive(false);
                    return;
                }
                _benches = GameObject.Find("benches");
                _benches.SetActive(false);
                _isBonusDropEnabled = false;
                _doorsTimer.SetActive(false);
                _ticketsCounter.SetActive(false);
                _haresCounter.SetActive(false);
                _killedCounter.SetActive(false);
                _lifes.SetActive(false);
                _bonusSelectWindow.SetActive(false);
                _isPassengerClickAllowed = false;
                _centralWayout.SetActive(false);
                _centralWayoutSprite.SetActive(false);
                _bonusesUI.SetActive(false);
                _megabonusUI.SetActive(false);
                _bonusButton.SetVisible(false);
                Time.timeScale = 0;
                _doorsTimerController.SetMoveAndStopDuration(3, 1);
                _doorsTimerController.SetMovementLocked(true);
                _fullConductorWindow.DisplayText(StringResources.GetLocalizedString("Training1"), false);
                break;
            case 1:
                _fullConductorWindow.DisplayTextWithImage(StringResources.GetLocalizedString("Training2"), Resources.Load<Sprite>("Sprites/training/training1"), false);
                break;
            case 2:
                _fullConductorWindow.DisplayText(StringResources.GetLocalizedString("Training3"), true);
                break;
            case 3:
                Time.timeScale = 1;
                SpawnPassengerFromRandomDoor("gnome", Spawner.TicketAdditionMode.WithTicket);
                StartCoroutine(WaitAndMoveNext(2));
                break;
            case 4:
                Time.timeScale = 0;
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training4"), true);
                GameObject gnomeObject = GameObject.Find("gnome(Clone)");
                _gnomePassenger = gnomeObject.GetComponent<Gnome>();
                _gnomePassenger.SetAttackEnabled(false);
                _gnomePassenger.SetFlyAwayDenied(true);
                _gnomePassenger.SetDragDenied(true);
                DisplayArrowForPassenger(_gnomePassenger);
                _isPassengerClickAllowed = true;
                break;
            case 5:
                Time.timeScale = 1;
                _ticketsCounter.SetActive(true);
                break;
            case 6:
                Time.timeScale = 0;
                Destroy(_activeArrow);
                _doorsTimer.SetActive(true);
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training5"), true);
                break;
            case 7:
                Time.timeScale = 1;
                _doorsTimerController.SetMovementLocked(false);
                StartCoroutine(WaitAndMoveNext(2));
                break;
            case 8:
                SpawnPassengerFromRandomDoor("bird", Spawner.TicketAdditionMode.WithoutTicket);
                GameObject bird = GameObject.Find("bird(Clone)");
                _birdPassenger = bird.GetComponent<Bird>();
                _birdPassenger.SetFlyAwayDenied(true);
                _birdPassenger.SetAttackEnabled(false);
                _birdPassenger.SetRunawayDenied(true);
                DisplayArrowForPassenger(_birdPassenger);
                _doorsTimerController.SetMovementLocked(true);
                break;
            case 9:
                Time.timeScale = 0;
                Destroy(_activeArrow);
                _doorsTimer.SetActive(true);
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training6"), true);
                break;
            case 10:
                _centralWayout.SetActive(true);
                _centralWayoutSprite.SetActive(true);
                DisplayArrow(_centralWayout);
                Time.timeScale = 1;
                _floor.AddDragCenterListner(_birdPassenger.name);
                break;
            case 11:
                Time.timeScale = 0;
                Destroy(_activeArrow);
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training7"), true);
                break;
            case 12:
                Time.timeScale = 1;
                _birdPassenger.SetRunawayDenied(false);
                _birdPassenger.SetFlyAwayDenied(false);
                _birdPassenger.ActivateFlyAwayListener();
                _haresCounter.SetActive(true);
                break;
            case 13:
                Time.timeScale = 0;
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training8"), true);
                break;
            case 14:
                _doorsTimerController.SetMoveAndStopDuration(3, 5);
                Time.timeScale = 1;
                _doorsTimerController.SetMovementLocked(false);
                _goAwayDoorIndex = Randomizer.GetInRange(0, _doors.Length);
                _gnomePassenger.SetAlwaysStickForTraining();
                _gnomePassenger.StartGoAway();
                StartCoroutine(WaitAndMoveNext(2.9f));
                break;
            case 15:
                _doors[(_goAwayDoorIndex)].Open(false);
                break;
            case 16:
                Time.timeScale = 0;
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training9"), true);
                break;
            case 17:
                Time.timeScale = 1;
                break;
            case 18:
                Time.timeScale = 0;
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString(_isGnomeSurvived ? "Training10" : "Training11"), true);
                break;
            case 19:
                Time.timeScale = 1;
                _doors[(_goAwayDoorIndex)].Close();
                _doorsTimerController.Unstick();
                StartCoroutine(WaitAndMoveNext(_doorsTimerController.GetCurrentRemainingTime() + 3));
                break;
            case 20:
                _goAwayDoorIndex = Randomizer.GetInRange(0, _doors.Length);
                _doorsTimerController.OpenDoors();

                int index = Randomizer.GetInRange(0, _doors.Length);
                _doors[index].OpenAndSpawnByName("granny", Spawner.TicketAdditionMode.WithTicket);
                index = Randomizer.GetInRange(0, _doors.Length);
                _doors[index].OpenAndSpawnByName("cat", Spawner.TicketAdditionMode.WithoutTicket);
                StartCoroutine(WaitAndMoveNext(0.1f));
                break;
            case 21:
                _doorsTimerController.SetMovementLocked(true);
                GameObject grannyObject = GameObject.Find("granny(Clone)");
                _grannyPassenger = grannyObject.GetComponent<Granny>();
                GameObject catObject = GameObject.Find("cat(Clone)");

                _catPassenger = catObject.GetComponent<Cat>();
                _catPassenger.SetMaximumAttackProbabilityForTraining();
                _grannyPassenger.SetMaximumAttackProbabilityForTraining();
                _grannyPassenger.SetConductorAttackDenied(true);
                _catPassenger.SetConductorAttackDenied(true);
                _catPassenger.SetFlyAwayDenied(true);
                _grannyPassenger.SetFlyAwayDenied(true);
                _catPassenger.SetHalfImmortal(true);
                _grannyPassenger.SetHalfImmortal(true);
                _hero = GameObject.Find("hero").GetComponent<ConductorSM>();
                _hero.SetHalfImmortal(true);
                break;
            case 22:
                _grannyPassenger.DisableAttackListener();
                _catPassenger.DisableAttackListener();
                if (_attackedPassenger != null)
                {
                    DisplayArrowForPassenger((PassengerSM)_attackedPassenger);
                }
                break;
            case 23:
                Time.timeScale = 0;
                Destroy(_activeArrow);
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training12"), false);
                break;
            case 24:
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training13"), false);
                break;
            case 25:
                _grannyPassenger.SetDragListenerEnabled(true);
                _catPassenger.SetDragListenerEnabled(true);
                _killedCounter.SetActive(true);
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training14"), true);
                break;
            case 26:
                Time.timeScale = 1;
                _catPassenger.AttackTarget = _grannyPassenger;
                break;
            case 27:
                _grannyPassenger.SetDragListenerEnabled(false);
                _grannyPassenger.SetCounterAttackProbability(0);
                _catPassenger.SetDragListenerEnabled(false);
                _catPassenger.SetConductorAttackDenied(false);
                _catPassenger.SetPassengerAttackDenied(true);
                _hero.SetAttackListenerActivated();
                _catPassenger.AttackTarget = _hero;
                break;
            case 28:
                StartCoroutine(WaitAndMoveNext(1));
                break;
            case 29:
                Time.timeScale = 0;
                _lifes.SetActive(true);
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training15"), true);
                _catPassenger.SetFlyAwayDenied(false);
                _isBonusDropEnabled = true;
                _catPassenger.IncreaseBonusProbability();
                break;
            case 30:
                DisplayArrowForPassenger(_catPassenger);
                Time.timeScale = 1;
                break;
            case 31:
                Destroy(_activeArrow);
                _bonusTimer.ActivateDropListener();
                break;
            case 32:
                StartCoroutine(WaitAndMoveNext(1));
                break;
            case 33:
                Time.timeScale = 0;
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training16"), true);
                break;
            case 34:
                Time.timeScale = 1;
                _bonusTimer.ActivateDropListener();
                break;
            case 35:
                Time.timeScale = 0;
                _bonusesUI.SetActive(true);
                _megabonusUI.SetActive(true);
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training17"), false);
                break;
            case 36:
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training18"), true);
                break;
            case 37:
                Time.timeScale = 1;
                _doorsTimerController.SetMoveAndStopDuration(3, 7);
                _doorsTimerController.OpenDoors();
                _doorsTimerController.SetMovementLocked(false);
                _grannyPassenger.SetStickProbability(0);
                _grannyPassenger.StartGoAway();
                _grannyPassenger.IncreaseGoAwayVelocity();
                _grannyPassenger.SetDragDenied(true);
                _goAwayDoorIndex = Randomizer.GetInRange(0, _doors.Length);
                _doors[(_goAwayDoorIndex)].Open(false);
                _grannyPassenger.IncrementStationCount();
                StartCoroutine(WaitAndMoveNext(_doorsTimerController.GetCurrentRemainingTime() + 3));
                break;
            case 38:
                _doorsTimerController.OpenDoors();
                SpawnPassengerFromRandomDoor("alien", Spawner.TicketAdditionMode.WithTicket);
                SpawnPassengerFromRandomDoor("alien", Spawner.TicketAdditionMode.WithTicket);
                StartCoroutine(WaitAndMoveNext(1));
                break;
            case 39:
                _doorsTimerController.SetMovementLocked(true);
                Time.timeScale = 0;
                _benches.SetActive(true);
                DisplayArrow(_benches);
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training19"), true);
                break;
            case 40:
                Destroy(_activeArrow);
                Time.timeScale = 1;
                _benchArray = FindObjectsOfType<Bench>();
                foreach (var bench in _benchArray)
                {
                    bench.SetCheckState(false);
                }
                _aliens = FindObjectsOfType<Alien>();
                foreach (var alien in _aliens)
                {
                    alien.SetFlyAwayDenied(true);
                    alien.SetSitListenerActivated(true);
                }
                break;
            case 41:
                foreach (var alien in _aliens)
                {
                    alien.SetSitListenerActivated(false);
                }
                _hero.SetHalfImmortal(false);
                Time.timeScale = 0;
                _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training20"), true);
                foreach (var bench in _benchArray)
                {
                    bench.SetCheckState(true);
                }
                break;
            case 42:
                Time.timeScale = 1;
                _doorsTimerController.SetStationCountListener(3);
                _doorsTimerController.SetMovementLocked(false);
                _doorsTimerController.DisableTrainingMode();
                break;
            case 43:
                PassengerSM[] passengers = FindObjectsOfType<PassengerSM>();
                foreach (var passengerSm in passengers)
                {
                    passengerSm.StartGoAway();
                    passengerSm.IncreaseGoAwayVelocity();
                }
                _doorsTimerController.DisableSpawn();
                _doorsTimerController.SetStationCountListener(2);
                break;
            case 44:
                _shortConductorWindow.ForceHide();
                Time.timeScale = 0;
                _fullConductorWindow.DisplayTextWithImage(StringResources.GetLocalizedString("Training21"), Resources.Load<Sprite>("Sprites/training/training2"), false, true);
                break;
            case 45:
                PlayerPrefs.SetString(TrainingKey, TrainingKey);
                SceneManager.LoadSceneAsync("MainMenu");
                break;
        }
        _isRefreshInProgress = false;
    }
Exemplo n.º 2
0
    private void ShowTrainingStep(int step)
    {
        switch (step)
        {
        case 0:
            if (IsTrainingFinished())
            {
                gameObject.SetActive(false);
                return;
            }
            _benches = GameObject.Find("benches");
            _benches.SetActive(false);
            _isBonusDropEnabled = false;
            _doorsTimer.SetActive(false);
            _ticketsCounter.SetActive(false);
            _haresCounter.SetActive(false);
            _killedCounter.SetActive(false);
            _lifes.SetActive(false);
            _bonusSelectWindow.SetActive(false);
            _isPassengerClickAllowed = false;
            _centralWayout.SetActive(false);
            _centralWayoutSprite.SetActive(false);
            _bonusesUI.SetActive(false);
            _megabonusUI.SetActive(false);
            _bonusButton.SetVisible(false);
            Time.timeScale = 0;
            _doorsTimerController.SetMoveAndStopDuration(3, 1);
            _doorsTimerController.SetMovementLocked(true);
            _fullConductorWindow.DisplayText(StringResources.GetLocalizedString("Training1"), false);
            break;

        case 1:
            _fullConductorWindow.DisplayTextWithImage(StringResources.GetLocalizedString("Training2"), Resources.Load <Sprite>("Sprites/training/training1"), false);
            break;

        case 2:
            _fullConductorWindow.DisplayText(StringResources.GetLocalizedString("Training3"), true);
            break;

        case 3:
            Time.timeScale = 1;
            SpawnPassengerFromRandomDoor("gnome", Spawner.TicketAdditionMode.WithTicket);
            StartCoroutine(WaitAndMoveNext(2));
            break;

        case 4:
            Time.timeScale = 0;
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training4"), true);
            GameObject gnomeObject = GameObject.Find("gnome(Clone)");
            _gnomePassenger = gnomeObject.GetComponent <Gnome>();
            _gnomePassenger.SetAttackEnabled(false);
            _gnomePassenger.SetFlyAwayDenied(true);
            _gnomePassenger.SetDragDenied(true);
            DisplayArrowForPassenger(_gnomePassenger);
            _isPassengerClickAllowed = true;
            break;

        case 5:
            Time.timeScale = 1;
            _ticketsCounter.SetActive(true);
            break;

        case 6:
            Time.timeScale = 0;
            Destroy(_activeArrow);
            _doorsTimer.SetActive(true);
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training5"), true);
            break;

        case 7:
            Time.timeScale = 1;
            _doorsTimerController.SetMovementLocked(false);
            StartCoroutine(WaitAndMoveNext(2));
            break;

        case 8:
            SpawnPassengerFromRandomDoor("bird", Spawner.TicketAdditionMode.WithoutTicket);
            GameObject bird = GameObject.Find("bird(Clone)");
            _birdPassenger = bird.GetComponent <Bird>();
            _birdPassenger.SetFlyAwayDenied(true);
            _birdPassenger.SetAttackEnabled(false);
            _birdPassenger.SetRunawayDenied(true);
            DisplayArrowForPassenger(_birdPassenger);
            _doorsTimerController.SetMovementLocked(true);
            break;

        case 9:
            Time.timeScale = 0;
            Destroy(_activeArrow);
            _doorsTimer.SetActive(true);
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training6"), true);
            break;

        case 10:
            _centralWayout.SetActive(true);
            _centralWayoutSprite.SetActive(true);
            DisplayArrow(_centralWayout);
            Time.timeScale = 1;
            _floor.AddDragCenterListner(_birdPassenger.name);
            break;

        case 11:
            Time.timeScale = 0;
            Destroy(_activeArrow);
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training7"), true);
            break;

        case 12:
            Time.timeScale = 1;
            _birdPassenger.SetRunawayDenied(false);
            _birdPassenger.SetFlyAwayDenied(false);
            _birdPassenger.ActivateFlyAwayListener();
            _haresCounter.SetActive(true);
            break;

        case 13:
            Time.timeScale = 0;
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training8"), true);
            break;

        case 14:
            _doorsTimerController.SetMoveAndStopDuration(3, 5);
            Time.timeScale = 1;
            _doorsTimerController.SetMovementLocked(false);
            _goAwayDoorIndex = Randomizer.GetInRange(0, _doors.Length);
            _gnomePassenger.SetAlwaysStickForTraining();
            _gnomePassenger.StartGoAway();
            StartCoroutine(WaitAndMoveNext(2.9f));
            break;

        case 15:
            _doors[(_goAwayDoorIndex)].Open(false);
            break;

        case 16:
            Time.timeScale = 0;
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training9"), true);
            break;

        case 17:
            Time.timeScale = 1;
            break;

        case 18:
            Time.timeScale = 0;
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString(_isGnomeSurvived ? "Training10" : "Training11"), true);
            break;

        case 19:
            Time.timeScale = 1;
            _doors[(_goAwayDoorIndex)].Close();
            _doorsTimerController.Unstick();
            StartCoroutine(WaitAndMoveNext(_doorsTimerController.GetCurrentRemainingTime() + 3));
            break;

        case 20:
            _goAwayDoorIndex = Randomizer.GetInRange(0, _doors.Length);
            _doorsTimerController.OpenDoors();

            int index = Randomizer.GetInRange(0, _doors.Length);
            _doors[index].OpenAndSpawnByName("granny", Spawner.TicketAdditionMode.WithTicket);
            index = Randomizer.GetInRange(0, _doors.Length);
            _doors[index].OpenAndSpawnByName("cat", Spawner.TicketAdditionMode.WithoutTicket);
            StartCoroutine(WaitAndMoveNext(0.1f));
            break;

        case 21:
            _doorsTimerController.SetMovementLocked(true);
            GameObject grannyObject = GameObject.Find("granny(Clone)");
            _grannyPassenger = grannyObject.GetComponent <Granny>();
            GameObject catObject = GameObject.Find("cat(Clone)");

            _catPassenger = catObject.GetComponent <Cat>();
            _catPassenger.SetMaximumAttackProbabilityForTraining();
            _grannyPassenger.SetMaximumAttackProbabilityForTraining();
            _grannyPassenger.SetConductorAttackDenied(true);
            _catPassenger.SetConductorAttackDenied(true);
            _catPassenger.SetFlyAwayDenied(true);
            _grannyPassenger.SetFlyAwayDenied(true);
            _catPassenger.SetHalfImmortal(true);
            _grannyPassenger.SetHalfImmortal(true);
            _hero = GameObject.Find("hero").GetComponent <ConductorSM>();
            _hero.SetHalfImmortal(true);
            break;

        case 22:
            _grannyPassenger.DisableAttackListener();
            _catPassenger.DisableAttackListener();
            if (_attackedPassenger != null)
            {
                DisplayArrowForPassenger((PassengerSM)_attackedPassenger);
            }
            break;

        case 23:
            Time.timeScale = 0;
            Destroy(_activeArrow);
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training12"), false);
            break;

        case 24:
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training13"), false);
            break;

        case 25:
            _grannyPassenger.SetDragListenerEnabled(true);
            _catPassenger.SetDragListenerEnabled(true);
            _killedCounter.SetActive(true);
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training14"), true);
            break;

        case 26:
            Time.timeScale             = 1;
            _catPassenger.AttackTarget = _grannyPassenger;
            break;

        case 27:
            _grannyPassenger.SetDragListenerEnabled(false);
            _grannyPassenger.SetCounterAttackProbability(0);
            _catPassenger.SetDragListenerEnabled(false);
            _catPassenger.SetConductorAttackDenied(false);
            _catPassenger.SetPassengerAttackDenied(true);
            _hero.SetAttackListenerActivated();
            _catPassenger.AttackTarget = _hero;
            break;

        case 28:
            StartCoroutine(WaitAndMoveNext(1));
            break;

        case 29:
            Time.timeScale = 0;
            _lifes.SetActive(true);
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training15"), true);
            _catPassenger.SetFlyAwayDenied(false);
            _isBonusDropEnabled = true;
            _catPassenger.IncreaseBonusProbability();
            break;

        case 30:
            DisplayArrowForPassenger(_catPassenger);
            Time.timeScale = 1;
            break;

        case 31:
            Destroy(_activeArrow);
            _bonusTimer.ActivateDropListener();
            break;

        case 32:
            StartCoroutine(WaitAndMoveNext(1));
            break;

        case 33:
            Time.timeScale = 0;
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training16"), true);
            break;

        case 34:
            Time.timeScale = 1;
            _bonusTimer.ActivateDropListener();
            break;

        case 35:
            Time.timeScale = 0;
            _bonusesUI.SetActive(true);
            _megabonusUI.SetActive(true);
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training17"), false);
            break;

        case 36:
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training18"), true);
            break;

        case 37:
            Time.timeScale = 1;
            _doorsTimerController.SetMoveAndStopDuration(3, 7);
            _doorsTimerController.OpenDoors();
            _doorsTimerController.SetMovementLocked(false);
            _grannyPassenger.SetStickProbability(0);
            _grannyPassenger.StartGoAway();
            _grannyPassenger.IncreaseGoAwayVelocity();
            _grannyPassenger.SetDragDenied(true);
            _goAwayDoorIndex = Randomizer.GetInRange(0, _doors.Length);
            _doors[(_goAwayDoorIndex)].Open(false);
            _grannyPassenger.IncrementStationCount();
            StartCoroutine(WaitAndMoveNext(_doorsTimerController.GetCurrentRemainingTime() + 3));
            break;

        case 38:
            _doorsTimerController.OpenDoors();
            SpawnPassengerFromRandomDoor("alien", Spawner.TicketAdditionMode.WithTicket);
            SpawnPassengerFromRandomDoor("alien", Spawner.TicketAdditionMode.WithTicket);
            StartCoroutine(WaitAndMoveNext(1));
            break;

        case 39:
            _doorsTimerController.SetMovementLocked(true);
            Time.timeScale = 0;
            _benches.SetActive(true);
            DisplayArrow(_benches);
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training19"), true);
            break;

        case 40:
            Destroy(_activeArrow);
            Time.timeScale = 1;
            _benchArray    = FindObjectsOfType <Bench>();
            foreach (var bench in _benchArray)
            {
                bench.SetCheckState(false);
            }
            _aliens = FindObjectsOfType <Alien>();
            foreach (var alien in _aliens)
            {
                alien.SetFlyAwayDenied(true);
                alien.SetSitListenerActivated(true);
            }
            break;

        case 41:
            foreach (var alien in _aliens)
            {
                alien.SetSitListenerActivated(false);
            }
            _hero.SetHalfImmortal(false);
            Time.timeScale = 0;
            _shortConductorWindow.DisplayText(StringResources.GetLocalizedString("Training20"), true);
            foreach (var bench in _benchArray)
            {
                bench.SetCheckState(true);
            }
            break;

        case 42:
            Time.timeScale = 1;
            _doorsTimerController.SetStationCountListener(3);
            _doorsTimerController.SetMovementLocked(false);
            _doorsTimerController.DisableTrainingMode();
            break;

        case 43:
            PassengerSM[] passengers = FindObjectsOfType <PassengerSM>();
            foreach (var passengerSm in passengers)
            {
                passengerSm.StartGoAway();
                passengerSm.IncreaseGoAwayVelocity();
            }
            _doorsTimerController.DisableSpawn();
            _doorsTimerController.SetStationCountListener(2);
            break;

        case 44:
            _shortConductorWindow.ForceHide();
            Time.timeScale = 0;
            _fullConductorWindow.DisplayTextWithImage(StringResources.GetLocalizedString("Training21"), Resources.Load <Sprite>("Sprites/training/training2"), false, true);
            break;

        case 45:
            PlayerPrefs.SetString(TrainingKey, TrainingKey);
            SceneManager.LoadSceneAsync("MainMenu");
            break;
        }
        _isRefreshInProgress = false;
    }