예제 #1
0
    public void ShowTasks(LevelTasks levelTasks)
    {
        ResetTasks();
        for (int i = 0; i < levelTasks.tasks.Count; i++)
        {
            Task currentTask = levelTasks.tasks[i];
            taskHolders[i].gameObject.SetActive(true);
            taskHolders[i].taskImg.sprite = SpriteDictionary?[currentTask.tileType]?[currentTask.tileTypeTag];
            taskHolders[i].taskCountText.gameObject.SetActive(true);
        }

        UpdateTasks(levelTasks);
    }
예제 #2
0
    private LevelTasks levelTaskStrToLevelTasks(LevelTaskStr levelTasks)
    {
        List <string> tasksStrList = new List <string>()
        {
            levelTasks.task1, levelTasks.task2, levelTasks.task3
        };
        LevelTasks levelTasksToReturn = new LevelTasks();

        for (int i = 0; i < tasksStrList.Count; i++)
        {
            Task task = stringToTask(tasksStrList[i]);
            levelTasksToReturn.AddTask(task);
        }
        return(levelTasksToReturn);
    }
예제 #3
0
 public void UpdateTasks(LevelTasks levelTasks)
 {
     for (int i = 0; i < levelTasks.tasks.Count; i++)
     {
         Task currentTask = levelTasks.tasks[i];
         if (currentTask.isDone)
         {
             taskHolders[i].taskCountText.gameObject.SetActive(false);
             taskHolders[i].taskDoneCheckmark.SetActive(true);
         }
         else
         {
             taskHolders[i].taskCountText.text = currentTask.count.ToString();
             taskHolders[i].taskDoneCheckmark.SetActive(false);
         }
     }
 }
예제 #4
0
    public void StartBoard(int lvlNumber)
    {
        level = LevelLoader.loadedLevels[lvlNumber - 1];

        int levelIndex = level.numberLevel;

        MovesController.singleton.SetMoves(level.moves);

        LevelTasks currentTasks = level.levelTasks.Clone();

        TasksController.singleton.SetTasks(currentTasks);
        StarContoroller.singleton.SetTargetScore(level.targetScore);

        UIManager.singleton.panelDictionary[Panels.Level].Title.text = $"Уровень {levelIndex}";



        boardSize   = new IntVector2(level.sizeMatrixCol, level.sizeMatrixRow);
        allTiles    = new TileController[Board.boardSize.x, Board.boardSize.y];
        locks       = new TileController[Board.boardSize.x, Board.boardSize.y];
        spawnPoints = new List <IntVector2>();

        BoardCreator.singleton.StartCreating(level);
    }
예제 #5
0
 public void SetTasks(LevelTasks tasks)
 {
     currentTasks = tasks;
     taskView.ShowTasks(currentTasks);
 }
예제 #6
0
 // Start is called before the first frame update
 void Start()
 {
     Instance = this;
 }