Ошибки таймера Actionascript

Некоторое время мы работали над игрой под названием ChemoBlue и не можем избавиться от этой ошибки:

РЕДАКТИРОВАТЬ: я изменил несколько строк кода, и ошибка теперь такова:

TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at ChemoBlueSetup/levelUp()[/Users/raphaelhennessy/Desktop/STS/Gold Cinema ChemoBlue/ChemoBlueSetup.as:71]

Раньше я получал гораздо больше ошибок, но теперь это единственная ошибка. Вот код, который создает ошибку.РЕДАКТИРОВАТЬ: Я сделал некоторые отладки, и, похоже, ошибка происходит здесь:

public function levelUp(evt:MouseEvent):void
        {
            if (level == 1)
            {
                elementName.text = ("water");
                gotoAndPlay(1, "Level");
            }
                else if (level == 2)
            {
                elementName.text = ("sand");
                gotoAndPlay(1, "Level");
            }
            else if (level == 3)
            {
                elementName.text = ("???");
                gotoAndPlay(1, "Level");
            }
            }

Заранее спасибо, -Раф

2 ответа

Ну, я не уверен, что это решит вашу проблему, но ваш прослушиватель событий в настоящее время не имеет параметров. Все прослушиватели событий должны иметь событие, которое оно прослушивает, в качестве параметра.

Так что вместо

function frameUp2():void

это должно сказать

function frameUp2(e:TimerEvent):void

Кажется, я исправил это... в функции levelUp я удалил строку, заставляющую динамический текст elementName сказать воду, если уровень равен единице, чего не было бы в любом случае, если бы эта функция была выполнена. Вот код:

public function levelUp(evt:MouseEvent):void
        {
            if (level == 1)
            {
                gotoAndPlay(1, "Level");
            }
                else if (level == 2)
            {
                elementName.text = ("sand");
                gotoAndPlay(1, "Level");
            }
            else if (level == 3)
            {
                elementName.text = ("???");
                gotoAndPlay(1, "Level");
            }
        }

Он не выдает ошибок и действует так, как я хочу. Спасибо всем!! -Raph

Другие вопросы по тегам