private IEnumerator StartGame() { Logo logo = FindObjectOfType <Logo>(); yield return(StartCoroutine(levelsFileLoader.LoadLevelFile(DataStorage.CurrentGameMode))); yield return(StartCoroutine(logo.ShowLogo())); Destroy(logo.gameObject); boardGrid.SpawnField(); figureSpawner.InitializeFigureSpawner(); if (!DataStorage.IsTutorialCompleted) { tutorial = levelInfoPanel.gameObject.AddComponent <Tutorial>(); tutorial.StartTutorial(this, levelInfoPanel, figureSpawner, boardGrid); } else { figureSpawner.SpawnFigures(levelsParameters.CurrentFigures, DataStorage.CountOfFigures); boardGrid.ShowMarks(true); levelInfoPanel.UpdateLevelValue(DataStorage.GetCurrentLevel()); levelInfoPanel.ShowPanelButtons(); } }
public void StartTutorial(Game game, LevelInfoPanel levelInfoPanel, FigureSpawner figureSpawner, BoardGrid boardGrid) { this.game = game; this.levelInfoPanel = levelInfoPanel; this.figureSpawner = figureSpawner; this.boardGrid = boardGrid; levelInfoPanel.SetLevelHeaderText("Training"); levelInfoPanel.UpdateLevelValue(tutorialLevel); figureSpawner.SpawnFigures(GetFiguresSpawnInfo(), GetCountOfFigures()); boardGrid.ShowMarks(false); levelInfoPanel.ShowTutorialButtons(); Addressables.LoadAssetAsync <GameObject>("Assets/Prefabs/Rules Window.prefab").Completed += OnResultWindowInstantiate; }