Example #1
0
        private void InitLevel()
        {
            if (useDontDestroy)
            {
                DontDestroyOnLoad(this.gameObject);
            }

            mainMenu = MenuManager.Instance;
            gameMenu = MenuManager.Instance;

            if (!gameController)
            {
                gameController = GameController.Instance;
                gameController.SetLevelManager(this);

                gameData        = (GameData.DevScripts.GameData)gameController.GameData.Data;
                gameLogicScript = (GameLogicScript)gameController.GameLogicScript.Script;

                timeManager.controlEvent.AddListener(playFieldManager.MobileControl);
                timeManager.dropEvent.AddListener(playFieldManager.ObjectMoveDown);
                timeManager.reduceDropEvent.AddListener(ReduceDropStep);
                timeManager.waveChangeEvent.AddListener(ChangeWave);

                playFieldManager.updateNextDropObjectListEvent += dropObjectManagerUi.SetDropObjectList;
                playFieldManager.SetDestroyRayCountListener(CatchLevelReward);
                playFieldManager.LoseLifeEvent += LoseLife;

                if (gameController.MenuAndLevelsDivided)
                {
                    RunLevel(gameData.ActiveLevel);
                }
            }
        }