Создание игровой платформы, нужен метод, чтобы остановить работу

Я делаю платформенную игру на флеше.

У меня есть класс цели (класс, который содержит код для спрайта цели, где при попадании в него он переходит к следующей части игры).

Внутри конструктора цели добавлены 2 прослушивателя событий:

addEventListener(Event.ADDED, beginClass);
addEventListener(Event.ENTER_FRAME, eFrame);

Функция beginClass хороша и запускается только один раз, но eFrame проверяет, достиг ли игрок цели, поэтому он постоянно работает. Проблема в том, что как только игрок достигает цели, eFrame продолжает работать, находясь в меню, описывающем следующую сцену для игрока. Моя функция eFrame ниже.

    private function eFrame(event:Event):void{
        if(hitTestObject(_root.mcMain)){
            var lastScore:int = _root.mainScore;
            _root.mainScore = lastScore;
            while (_root.lvlHolder.numChildren > 0) {
                    _root.lvlHolder.removeChildAt(0);
            }
            _root.mcMain.removeChildAt(0);
            _root.isInCut = true;
            if (_root.lvlCurrent == 1) {
                _root.gotoAndStop(2);
            } else if (_root.lvlCurrent == 2) {
                _root.gotoAndStop(3);
            } else if (_root.lvlCurrent == 3) {
                _root.gotoAndStop(4);
            }
        }
    }

Кадры 2, 3, 4 - это кадры, содержащие только текст и кнопку, которые отображают сообщение для игрока, а затем нажатия игрока продолжаются. Моя проблема в том, что eFrame все еще пытается быть запущенным, но класс не был создан, а метод вызывает крайнюю задержку, когда игрок продолжает.

Ответы на вопрос(3)

Ваш ответ на вопрос