Судя по комментарию во вступительном вопросе, похоже, что buy_sugar имеет значение null.Вы полагаете, что buy_sugar - это мувиклип на временной шкале, и, следовательно, на него можно безопасно ссылаться в своем коде, но если бы buy_sugar действительно существовал, вы бы не получили эту ошибку.
Вы абсолютно уверены, что buy_sugar существует в том же кадре, что и выполняемый вами вызов?
Допустим, вы находитесь в кадре 3 ...
buy_sugar.addEventListener(Event.FOO, onFoo); // if buy_sugar exists on frame 3, this works.
Но что, если вы находитесь во 2-м кадре?
gotoAndStop(3);
buy_sugar.addEventListener(Event.FOO, onFoo); // problem... this can fail if buy_sugar exists on 3 but NOT on 2.
Убедитесь, что клип, на который вы ссылаетесь, действительно существует в фрейме, в котором записан вызов, и дважды проверьте правильность написания имени вашего экземпляра.,
РЕДАКТИРОВАТЬ ::
Эти фотографии довольно интересные.Похоже, что buy_sugar является символом мувиклипа, который существует в кадре 3, но buy_sugar отслеживает как ноль в вашем сценарии кадра 3.Вот несколько советов для дальнейшей отладки.
В коде, где у вас есть trace (buy_sugar); замените его на trace ("тестирование наличия buy_sugar", buy_sugar, currentFrame);
ВЫРЕЗАТЬ видеоклип buy_sugar со своего места на сцене.Создайте новый слой ниже всех остальных и вставьте buy_sugar в ключевой кадр в кадре 1. Не добавляйте ЛЮБЫЕ другие ключевые кадры на этом слое.Цель состоит в том, чтобы убедиться, что buy_sugar существует всегда, во всех кадрах.
Дайте мне знать, что вы увидите, когда будете делать это.
РЕДАКТИРОВАТЬ
Теперь, когда мы определили, что клип может быть обнаруженным, когда он существует во всех кадрах, переместить этот ключевой кадр от 1 до 3, чтобы клип существовал только в кадре 3. Он все еще работает?Если это так, просто переместите этот слой туда, где он будет выглядеть лучше.
Если он не работает, снова переместите этот слой туда, где видеоклип будет выглядеть лучше.Вместо того, чтобы помещать клип only в кадр 3, создайте ключевой кадр в кадре 3 с клипом, где вы хотите, и на всех других кадрах клип будет жить где-то за пределами видимой сцены.Это вроде хакерски, но это помогает решить проблему.