예제 #1
0
    void LoadLevel(int levelIndex, bool setMaxLife)
    {
        if (levels.Length <= levelIndex)
        {
            scenesLoaderVar.LoadStartScene();
        }
        else
        {
            currentLevel = levelIndex;
            levelVar     = levels[levelIndex];
            basketVar.ActiveBasket();
            backGroundSprite.sprite = levelVar.backGroundSprite;
            bossImage.sprite        = levelVar.bossSprite;
            consileryImage.sprite   = levelVar.consilerySprite;

            musicPlayer.Stop();
            musicPlayer.PlayOneShot(levelVar.levelTheme);

            GetCurrency();
            CurrencyTxtUpdate();
            // обнуляем силу
            maxPower = levelVar.targetPower;
            AddPower(-power);
            //ставим жизнь в максимум или сохраняем
            if (setMaxLife)
            {
                ChangeLife(maxLife - life);
            }

            //зануляем деньги
            money         = 0;
            useHeartsNum  = 0;
            useShieldsNum = 0;

            //выключаем аларм если он был
            alarmOn = false;

            levelPickups = levelVar.pickupTable;
            levelStage   = 1;

            Invoke(nameof(ConsilerySay), 0.5f);
            Invoke(nameof(BossSay), 3.5f);
            StageDrop(1);
        }
    }