public void OnReset()
        {
            EventManager.Unsubscribe <PlayerIntoBlockTriggerEnter>(OnPlayerIntoBlockTriggerEnter);

            _activeLevelBlocks   = null;
            _elementsGroups      = null;
            _levelBlocks         = null;
            _stackElementsGroups = null;
        }
        public void OnInit()
        {
            _activeLevelBlocks = new List <LevelBlock>();

            var lcc     = ControllersBox.Get <LevelConfigController>();
            var levelId = LevelController.CurrentLevel;

            _elementsGroups = lcc.Config.GetElementsGroups(levelId.Level);
            _levelBlocks    = lcc.Config.LevelBlocks;

            for (var i = 0; i < MinCountBlocks; i++)
            {
                CreateNewBlock(false);
            }

            EventManager.Subscribe <PlayerIntoBlockTriggerEnter>(this, OnPlayerIntoBlockTriggerEnter);
        }