protected override void GoalCompletedHandler(bool shouldShowPopup = true) { if (_gameManager.popupManager != null) { _minionManager.StopMinions(); _towerManager.StopOrInitTowers(); _lvlCanvas.renderMode = RenderMode.ScreenSpaceOverlay; BasePopup popup = null; if (_currentTutorial + 1 >= _objectiveList.Count) { _gameManager.tutorialManager.TutorialFinished(TutorialPhase.FirstTimeOnApp_INGAME_tuto_1_phase3); popup = _gameManager.popupManager.BuildPopup(_lvlCanvasManager.transform, "TUTORIAL COMPLETED!", "Continue to main map", "Continue"); popup.AddFunction(BasePopup.FunctionTypes.ok, OnFinishLevelCallback); popup.transform.localScale *= 2; base.GoalCompletedHandler(false); } else { var phaseTxt = "PHASE " + (_currentTutorial + 1) + "/" + _objectiveList.Count; popup = _gameManager.popupManager.BuildPopup(_lvlCanvasManager.transform , phaseTxt + " COMPLETED!" , "Do you want to continue with the tutorial ?" , "Continue" , "Exit" , PopupsID.AcceptOrDecline); popup.transform.localScale *= 2f; popup.AddFunction(BasePopup.FunctionTypes.ok, setNextTutorialIfPossible); popup.AddFunction(BasePopup.FunctionTypes.cancel, cancelTutorial); _currentTutorial++; } } }