示例#1
0
    void Update()
    {
        transform.GetChild(0).gameObject.GetComponent <Text>().text = "" + ScoreboardManager.CurrentPoints;
        transform.GetChild(1).gameObject.GetComponent <Text>().text = "" + ScoreboardManager.CurrentPoints;

        transform.GetChild(0).gameObject.GetComponent <Text>().color = LevelManager.GetCurrentColorByCurrentLevelDifficulty();

        if (lastLevelDifficulty != LevelManager.CurrentLevelDifficulty)
        {
            lastLevelDifficulty = LevelManager.CurrentLevelDifficulty;

            Destroy(transform.GetChild(0).gameObject.GetComponent <ColorFadeEffect>());
            Destroy(transform.GetChild(1).gameObject.GetComponent <ColorFadeEffect>());

            componentAdded = false;
        }

        if (!componentAdded)
        {
            ColorFadeEffect temp1 = transform.GetChild(0).gameObject.AddComponent <ColorFadeEffect>();
            ColorFadeEffect temp2 = transform.GetChild(1).gameObject.AddComponent <ColorFadeEffect>();

            temp1.speedTransition = 2;
            temp2.speedTransition = 2;

            componentAdded = true;
        }
    }
    void Update()
    {
        if (IsScoreboard)
        {
            GetComponent <Text>().color = Color.black;
        }
        else
        {
            GetComponent <Text>().color = LevelManager.GetCurrentColorByCurrentLevelDifficulty();
        }

        if (lastLevelDifficulty != LevelManager.CurrentLevelDifficulty || lastIsScoreboard != IsScoreboard)
        {
            lastLevelDifficulty = LevelManager.CurrentLevelDifficulty;
            lastIsScoreboard    = IsScoreboard;
            Destroy(gameObject.GetComponent <ColorFadeEffect>());
            componentAdded = false;
        }

        if (!componentAdded)
        {
            gameObject.AddComponent <ColorFadeEffect>();
            componentAdded = true;
        }
    }
    void Start()
    {
        levelClock         = new Chronometer(timeLimit, this);
        timerToChangeScene = new Chronometer(timeToExit);

        IsPlayerAlive = true;

        if (firstRunScene)
        {
            if (languageSelected != CurrentLevelLanguage)
            {
                CurrentLevelLanguage = languageSelected;
            }

            if (difficultySelected != CurrentLevelDifficulty)
            {
                CurrentLevelDifficulty = difficultySelected;
            }
        }
        else
        {
            languageSelected   = CurrentLevelLanguage;
            difficultySelected = CurrentLevelDifficulty;
        }
    }
    void SwitchToDifficulty(LevelDifficulty difficulty)
    {
        InitializeIfNeeded();

        tcScript.selectedDifficulty     = difficulty;
        this.currentDisplayedDifficulty = difficulty;

        // Hide all checkmarks
        easyCheckboxOn.SetActive(false);
        mediumCheckboxOn.SetActive(false);
        hardCheckboxOn.SetActive(false);
        easyCheckboxOff.SetActive(true);
        mediumCheckboxOff.SetActive(true);
        hardCheckboxOff.SetActive(true);

        // Show appropriate checkmark
        switch (difficulty)
        {
        case LevelDifficulty.LEVEL_DIFFICULTY_EASY:
            easyCheckboxOn.SetActive(true);
            easyCheckboxOff.SetActive(false);
            break;

        case LevelDifficulty.LEVEL_DIFFICULTY_MEDIUM:
            mediumCheckboxOn.SetActive(true);
            mediumCheckboxOff.SetActive(false);
            break;

        case LevelDifficulty.LEVEL_DIFFICULTY_HARD:
            hardCheckboxOn.SetActive(true);
            hardCheckboxOff.SetActive(false);
            break;
        }
    }
    private void LoadInLevelDifficulty(int i)
    {
        currentLevelDifficulty = levelDifficulties[i - 1];
        bool toAdd = false;

        if (currentLevelDifficulty.specificOutfit != OutfitList.None)
        {
            if (currentOutfitsUnlocked.Count == 0)
            {
                toAdd = true;
            }
            else
            {
                foreach (OutfitList outfit in currentOutfitsUnlocked)
                {
                    if (outfit == currentLevelDifficulty.specificOutfit)
                    {
                        toAdd = true;
                    }
                }
            }
            if (toAdd)
            {
                currentOutfitsUnlocked.Add(currentLevelDifficulty.specificOutfit);
            }
        }
        currentTimeBetween = currentLevelDifficulty.timeBetween;
    }
    public void Refresh(LevelDifficulty level_difficulty)
    {
        var datas = GameControl.Instance.game_data.GetLevelDatas(level_difficulty);

        grid_view.reloadData(datas.Values.ToList());
        //int child_count = this._level_parent.transform.childCount;
        //if (child_count < datas.Count)
        //{
        //	for (int i = 0; i < datas.Count - child_count; i++)
        //	{
        //		UILevelItem item = UILevelItem.Create(this._level_parent);
        //		this.level_items.Add(item);
        //	}

        //}

        //for (int i = 0; i < this.level_items.Count; i++)
        //{
        //	this.level_items[i].gameObject.SetActive(false);
        //}
        //int index = 0;
        //foreach (var item in datas)
        //{
        //	this.level_items[index].Init(item.Value);
        //	this.level_items[index].gameObject.SetActive(true);
        //	index++;
        //}
    }
示例#7
0
    public static List <Level> ReadLevels()
    {
        List <Level> readLevels        = new List <Level>();
        TextAsset    levelSettingsText = Resources.Load <TextAsset>("Levels/levels");
        Level        level;

        var levelSettingsTextArr = levelSettingsText.text.Split('\n');

        int[] levelNumberArr = new int[Enum.GetNames(typeof(LevelMode)).Length + 1];

        for (int j = 0; j < levelSettingsTextArr.Length; j++)
        {
            if (levelSettingsTextArr[j].Length == 0)
            {
                continue;
            }

            var levelSettings = levelSettingsTextArr[j].Split(',');

            LevelMode       levelMode       = (LevelMode)Enum.Parse(typeof(LevelMode), levelSettings[0]);
            LevelDifficulty levelDifficulty = (LevelDifficulty)Enum.Parse(typeof(LevelDifficulty), levelSettings[1]);

            level = new Level(
                levelMode,                                                                              // LevelMode
                levelDifficulty,                                                                        // Difficulty
                ++levelNumberArr[(int)levelMode],                                                       // LevelNumber
                0.0f,                                                                                   // Multiplier
                Array.ConvertAll(levelSettings[2].Trim().Split('-'), int.Parse)                         // Design Array
                );

            readLevels.Add(level);
        }

        return(readLevels);
    }
    private GameObject SetDifficulty(LevelDifficulty levelDifficulty)
    {
        if (m_LastActived != null)
        {
            m_LastActived.SetActive(false);
        }
        GamePreferencesManager.m_Instance.ConfigDifficulty(levelDifficulty);
        switch (levelDifficulty)
        {
        case LevelDifficulty.EASY:
            m_EasySign.SetActive(true);
            return(m_EasySign);

        case LevelDifficulty.MEDIUM:
            m_MediumSign.SetActive(true);
            return(m_MediumSign);

        case LevelDifficulty.HARD:
            m_HardSign.SetActive(true);
            return(m_HardSign);

        default:
            return(null);
        }
    }
示例#9
0
        public int GetNoteCount(string characteristicId, LevelDifficulty difficulty)
        {
            var      infoText = File.ReadAllText(GetPathForDifficulty(characteristicId, difficulty));
            JSONNode node     = JSON.Parse(infoText);

            return(node["_notes"].AsArray.Count);
        }
示例#10
0
    private void Start()
    {
        _canOpenCards = true;
        _timer.DisableTimer();

        // FIXME: парсить список карт на уровне из EnvironmentDataStorage
        _availableCards = CardsDataStorage.Instance.GetData();

        _cardTable.SetAvailableCards(_availableCards);

        for (int i = 0; i < _availableCards.Count; i++)
        {
            CardData availableCard = _availableCards[i];
            _collectedCards.Add(availableCard.Id, 0);
            _cardsCounters[i].InitCounter(availableCard);
        }

        //FIXME: уровень должен определяться по состоянию профиля
        int gameLevelNumber = 12;

        LevelDifficulty levelDifficulty = GameLevelsConfig.Instance.GetLevelDifficulty(gameLevelNumber);
        var             questsConfig    = QuestsConfig.Instance;

        _minimumCardsRequired = questsConfig.GetMinimumCardsRequiredForQuest(levelDifficulty);
        _maximumCardsRequired = questsConfig.GetMaximumCardsRequiredForQuest(levelDifficulty);
        _maximumCardTypes     = questsConfig.GetMaximumCardTypesRequiredForQuest(levelDifficulty);

        foreach (var questItem in _questItems)
        {
            questItem.ResetItem();
        }

        StartCoroutine(QuestGenerationProcess());
    }
示例#11
0
    public static int GetRecord(LevelDifficulty level_difficulty, int level)
    {
        string name   = Enum.GetName(typeof(LevelDifficulty), level_difficulty) + level;
        int    record = PlayerPrefs.GetInt(name);

        return(record);
    }
    void Update()
    {
        y += INCREMENT * paralaxSpeed * LevelManager.GetMultiplierByCurrentLevelDifficulty();
        MaterialPropertiesHandler.SetOffset(GetComponent <MeshRenderer>(), 0, y);

        if (lastLevelDifficulty != LevelManager.CurrentLevelDifficulty)
        {
            lastLevelDifficulty = LevelManager.CurrentLevelDifficulty;
            Destroy(gameObject.GetComponent <ColorFadeEffect>());
            componentAdded = false;
        }

        if (!componentAdded)
        {
            ColorFadeEffect tempComponent = gameObject.AddComponent <ColorFadeEffect>();

            if (enableChangeColor)
            {
                tempComponent.renderColor = LevelManager.GetCurrentColorByCurrentLevelDifficulty();
                tempComponent.ResetComponent();
            }
            else
            {
                tempComponent.renderColor = Color.white;
            }

            componentAdded = true;
        }

        gameObject.GetComponent <ColorFadeEffect>().speedTransition *= LevelManager.GetMultiplierByCurrentLevelDifficulty() / 4f;
    }
示例#13
0
    public LevelData GetLevelData(int level, LevelDifficulty level_difficult)
    {
        Dictionary <int, LevelData> datas = null;

        switch (level_difficult)
        {
        case LevelDifficulty.Simple:
            datas = simple_level_datas;
            break;

        case LevelDifficulty.Normal:
            datas = normal_level_datas;
            break;

        case LevelDifficulty.Hard:
            datas = hard_level_datas;
            break;

        case LevelDifficulty.Abnormal:
            datas = _abnormal_level_datas;
            break;
        }
        if (datas.ContainsKey(level))
        {
            return(datas[level]);
        }
        return(null);
    }
示例#14
0
    IEnumerator LoadOneSoundLevel(LevelDifficulty levelDifficulty, HeartProblem heartProblem = null)
    {
        LevelSelectorPanel1.SetActive(false);
        LevelSelectorPanel2.SetActive(false);
        LevelDifficultyPanel.SetActive(false);
        AsyncOperation sceneLoading = SceneManager.LoadSceneAsync("Gameplay", LoadSceneMode.Additive);

        while (!sceneLoading.isDone)
        {
            yield return(new WaitForEndOfFrame());
        }


        // Start game
        if (heartProblem != null)
        {
            Debug.Log("Starting Game for disease : " + heartProblem.formattedName);
        }
        yield return(new WaitForEndOfFrame());

        if (FindObjectOfType <GameplayManager>() != null)
        {
            GameplayManager.instance.InitializeGame(levelDifficulty, heartProblem);
        }
    }
示例#15
0
    public void Refresh(LevelDifficulty level_difficulty)
    {
        var datas       = GameControl.Instance.game_data.GetLevelDatas(level_difficulty);
        int child_count = this._level_parent.transform.childCount;

        if (child_count < datas.Count)
        {
            for (int i = 0; i < datas.Count - child_count; i++)
            {
                UILevelItem item = UILevelItem.Create(this._level_parent);
                this.level_items.Add(item);
            }
        }

        for (int i = 0; i < this.level_items.Count; i++)
        {
            this.level_items[i].gameObject.SetActive(false);
        }
        int index = 0;

        foreach (var item in datas)
        {
            this.level_items[index].Init(item.Value);
            this.level_items[index].gameObject.SetActive(true);
            index++;
        }
    }
示例#16
0
    private void determineLevelDifficulty()
    {
        if (Time.time >= 5f)
        {
            _levelDifficulty = LevelDifficulty.Medium;
        }
        if (Time.time >= 15f)
        {
            _levelDifficulty = LevelDifficulty.Hard;
        }
        switch (_levelDifficulty)
        {
        case LevelDifficulty.Easy:
            _currentLevelSpeed = 6f;
            SpawnLevelPart(Random.Range(0, 4), _easyLevelParts);
            break;

        case LevelDifficulty.Medium:
            _currentLevelSpeed = 8f;
            SpawnLevelPart(Random.Range(0, 4), _mediumLevelParts);
            break;

        case LevelDifficulty.Hard:
            _currentLevelSpeed = 11f;
            SpawnLevelPart(Random.Range(0, 4), _hardLevelParts);
            break;

        default:
            break;
        }
    }
示例#17
0
 private void Start()
 {
     levelDiff     = LevelDifficulty.Instance;
     anim          = GetComponent <Animator>();
     bounceBoxTopY = bounceBoxCol.bounds.center.y + bounceBoxCol.bounds.size.y / 2;
     GeneratePool();
     nextSpawnTime = UnityEngine.Random.Range(minTimeBetweenSpawns[levelDiff.Difficulty], maxTimeBetweenSpawns[levelDiff.Difficulty]);
 }
示例#18
0
 private void Start()
 {
     levelDiff          = LevelDifficulty.Instance;
     configs            = GetComponent <LevelConfigs>();
     scoringZone.Score += RockScore;
     curentTime         = configs.levelDuration[levelDiff.Difficulty];
     StartCoinPool();
 }
    void Start()
    {
        lastDifficulty = LevelManager.CurrentLevelDifficulty;

        GetComponent <AudioSource>().clip = levelMusics[(int)LevelManager.CurrentLevelDifficulty];
        GetComponent <AudioSource>().Play();
        lastDifficulty = LevelManager.CurrentLevelDifficulty;
    }
示例#20
0
 public Level(LevelMode mode, LevelDifficulty difficulty, int levelNo, float difficultyMultiplier, int[] design)
 {
     this.mode                 = mode;
     this.difficulty           = difficulty;
     this.levelNo              = levelNo;
     this.difficultyMultiplier = difficultyMultiplier;
     this.design               = new List <int>(design);
     this.totalCardCount       = design.Length;
 }
示例#21
0
    public void CloseCard()
    {
        LevelController gameCont   = LevelController.Instance;
        LevelDifficulty difficulty = gameCont.currLevel.difficulty;

        timeLeft         = waitingTime;
        cardText.enabled = false;
        cardImage.sprite = gameCont.closeCardSprite;
    }
示例#22
0
    public void SetDifficultyForLevel(int level)
    {
        LevelDifficulty diff = diffManager.GetDifficulty(level);

        if (diff != null)
        {
            moveSpeed = diff.pacManSpeed;
        }
    }
 public void ConfigDifficulty(LevelDifficulty levelDifficulty)
 {
     SetDifficultyPref(m_LevelDifficulty, 0);
     SetDifficultyPref(levelDifficulty, 1);
     m_LevelDifficulty = levelDifficulty;
     m_Highscore       = GetHighscore();
     m_Coin_Highscore  = GetCoinHighscore();
     m_Switched        = true;
 }
 void Update()
 {
     if (lastDifficulty != LevelManager.CurrentLevelDifficulty)
     {
         GetComponent <AudioSource>().clip = levelMusics[(int)LevelManager.CurrentLevelDifficulty];
         GetComponent <AudioSource>().Play();
         lastDifficulty = LevelManager.CurrentLevelDifficulty;
     }
 }
示例#25
0
        public async Task RemoveSongAsync(string songId, [Remainder] string paramString = null)
        {
            if (IsAdmin())
            {
                //Parse the difficulty input, either as an int or a string
                LevelDifficulty parsedDifficulty = LevelDifficulty.ExpertPlus;

                string difficultyArg = ParseArgs(paramString, "difficulty");
                if (difficultyArg != null)
                {
                    //If the enum conversion doesn't succeed, try it as an int
                    if (!Enum.TryParse(difficultyArg, true, out parsedDifficulty))
                    {
                        await ReplyAsync("Could not parse difficulty parameter.\n" +
                                         "Usage: removeSong [songId] [difficulty]");

                        return;
                    }
                }

                string characteristicArg = ParseArgs(paramString, "characteristic");
                characteristicArg = characteristicArg ?? "Standard";

                //Sanitize input
                if (songId.StartsWith("https://beatsaver.com/") || songId.StartsWith("https://bsaber.com/"))
                {
                    //Strip off the trailing slash if there is one
                    if (songId.EndsWith("/"))
                    {
                        songId = songId.Substring(0, songId.Length - 1);
                    }

                    //Strip off the beginning of the url to leave the id
                    songId = songId.Substring(songId.LastIndexOf("/") + 1);
                }

                if (songId.Contains("&"))
                {
                    songId = songId.Substring(0, songId.IndexOf("&"));
                }

                //Get the hash for the song
                var hash = BeatSaver.BeatSaverDownloader.GetHashFromID(songId);

                if (Song.Exists(hash, parsedDifficulty, characteristicArg, true))
                {
                    var song = new Song(hash, parsedDifficulty, characteristicArg);
                    song.Old = true;
                    await ReplyAsync($"Removed {song.SongName} ({song.Difficulty}) ({song.Characteristic}) from the song list");
                }
                else
                {
                    await ReplyAsync("Specified song does not exist with that difficulty and characteristic");
                }
            }
        }
示例#26
0
    void Update()
    {
        switch (LevelManager.CurrentLevelLanguage)
        {
        case Language.English:
            transform.GetChild(0).gameObject.GetComponent <Text>().text = englishTitle;
            transform.GetChild(1).gameObject.GetComponent <Text>().text = englishTitle;
            break;

        case Language.BrazilianPortuguese:
            transform.GetChild(0).gameObject.GetComponent <Text>().text = portugueseTitle;
            transform.GetChild(1).gameObject.GetComponent <Text>().text = portugueseTitle;
            break;
        }

        if (enableChangeColor)
        {
            transform.GetChild(1).gameObject.GetComponent <Text>().color = LevelManager.GetCurrentColorByCurrentLevelDifficulty();
        }
        else if (enablePreferedColors)
        {
            transform.GetChild(0).gameObject.GetComponent <Text>().color = backColor;
            transform.GetChild(1).gameObject.GetComponent <Text>().color = frontColor;
        }
        else
        {
            transform.GetChild(1).gameObject.GetComponent <Text>().color = Color.gray;
        }

        if (lastLevelDifficulty != LevelManager.CurrentLevelDifficulty ||
            lastEnableHighlight != enableHighlightOnFrontText || lastEnableChangeColor != enableChangeColor)
        {
            componentAdded        = false;
            lastLevelDifficulty   = LevelManager.CurrentLevelDifficulty;
            lastEnableChangeColor = enableChangeColor;
            lastEnableHighlight   = enableHighlightOnFrontText;

            Destroy(transform.GetChild(0).gameObject.GetComponent <ColorFadeEffect>());
            Destroy(transform.GetChild(1).gameObject.GetComponent <ColorFadeEffect>());
        }

        if (!componentAdded)
        {
            componentAdded = true;

            if (enableHighlightOnFrontText)
            {
                transform.GetChild(1).gameObject.AddComponent <ColorFadeEffect>();
            }
            else
            {
                transform.GetChild(0).gameObject.AddComponent <ColorFadeEffect>();
            }
        }
    }
示例#27
0
        private void buttonStart_Click(object sender, EventArgs e)
        {
            random    = new Random();
            this.name = textBoxPlayerName.Text;
            InitList();
            if (radioButtonEasy.Checked)
            {
                level = LevelDifficulty.Easy;
            }
            else if (radioButtonNorm.Checked)
            {
                level = LevelDifficulty.Normal;
            }
            else
            {
                level = LevelDifficulty.Hard;
            }


            switch (level)
            {
            case LevelDifficulty.Easy:
            {
                questWord = easyList[random.Next(easyList.Count)].Word;
                break;
            }

            case LevelDifficulty.Normal:
            {
                questWord = normList[random.Next(normList.Count)].Word;
                break;
            }

            case LevelDifficulty.Hard:
            {
                questWord = hardList[random.Next(hardList.Count)].Word;
                break;
            }
            }

            if (Application.OpenForms.Count == 1)
            {
                GameFrame frm = new GameFrame(level, name, questWord);
                frm.Show();
                this.Hide();
            }
            else
            {
                Application.OpenForms[Application.OpenForms.Count - 1].Hide();
                GameFrame frm = new GameFrame(level, name, questWord);
                this.Hide();
                frm.Show();
                Application.OpenForms[Application.OpenForms.Count - 2].Close();
            }
        }
示例#28
0
    public void UseSecondLife()
    {
        secondLifeUsed = true;


        //
        savedDifficulty = LevelHandler.instance.levelDifficulty;
        savedDistanceTraveledByLayout = LevelHandler.instance.distanceTraveledByLayout;

        Object.DontDestroyOnLoad(this.gameObject);
    }
示例#29
0
 void FixDiffOrder()
 {
     if (maxDiff < minDiff)
     {
         var temp = minDiff;
         minDiff = maxDiff;
         maxDiff = temp;
         ModPrefs.SetInt(Plugin.PluginName, minDiffSetting, (int)minDiff);
         ModPrefs.SetInt(Plugin.PluginName, maxDiffSetting, (int)maxDiff);
     }
 }
示例#30
0
    public void SetGameStart(int currentLevel, LevelDifficulty level_difficulty = LevelDifficulty.Simple)
    {
        GameControl.Instance.game_data.currentGameLevel   = currentLevel;
        GameControl.Instance.game_data.Current_Difficulty = level_difficulty;
        this.gameStartTime = Time.realtimeSinceStartup;
        GameControl.Instance.game_data.isGamePlay = true;
        var level_data = GameControl.Instance.game_data.GetLevelData(currentLevel, level_difficulty);

        this.CreateOperationalImage(level_data);
        this.CreateImageOnShiLiPan(level_data);
    }
示例#31
0
        /// <summary>
        /// Generates sudoku grid
        /// </summary>
        /// <param name="n">Number of sectors in row and column. for n = 9 means a 3x3 sudoku grid</param>
        /// <returns></returns>
        public SudokuGrid Generate(int n, LevelDifficulty levelDifficulty)
        {
            _rowSize = n;
            _sectorRowSize = Convert.ToInt32(Math.Sqrt(_rowSize));
            _gridSize = _rowSize * _rowSize;

            InitSudokuCells();

            Stopwatch time = Stopwatch.StartNew();

            foreach (SudokuCell sudokuCell in _sudokuCellList)
                GenerateRandomValue(sudokuCell);

            ApplyLevelDifficulty(levelDifficulty);

            time.Stop();

            ExecutionTime = time.ElapsedMilliseconds;

            return this;
        }
示例#32
0
        private void ApplyLevelDifficulty(LevelDifficulty levelDifficulty)
        {
            int refVal = 81; // Ref value for 3x3 grid.
            int valToHide = 0; // This amount of cell value will be hidden
            int lowerBoundForExtremelyEasy = (_gridSize * 50) / refVal; // Ref value for lower bound
            int lowerBoundForEasy = (_gridSize * 36) / refVal; // Ref value for lower bound
            int lowerBoundForMedium = (_gridSize * 32) / refVal; // Ref value for lower bound
            int lowerBoundForDifficult = (_gridSize * 28) / refVal; // Ref value for lower bound
            int lowerBoundForEvil = (_gridSize * 22) / refVal; // Ref value for lower bound

            switch (levelDifficulty)
            {
                case LevelDifficulty.ExtremelyEasy:
                    valToHide = _gridSize - new Random().Next(lowerBoundForExtremelyEasy, _gridSize - 1);
                    break;
                case LevelDifficulty.Easy:
                    valToHide = _gridSize - new Random().Next(lowerBoundForEasy, lowerBoundForExtremelyEasy);
                    break;
                case LevelDifficulty.Medium:
                    valToHide = _gridSize - new Random().Next(lowerBoundForMedium, lowerBoundForEasy);
                    break;
                case LevelDifficulty.Difficult:
                    valToHide = _gridSize - new Random().Next(lowerBoundForDifficult, lowerBoundForMedium);
                    break;
                case LevelDifficulty.Evil:
                    valToHide = _gridSize - new Random().Next(lowerBoundForEvil, lowerBoundForDifficult);
                    break;
            }

            int sector, index;
            SudokuCell sudokuCell;
            for (int i = 0; i < valToHide; i++)
            {
                sector = SelectSection();

                index = GetRandomIndexInSector(sector);

                sudokuCell = _sudokuCellList.SingleOrDefault(x => x.Index == index);

                sudokuCell.Hidden = true;
            }
        }