PDA

Просмотр полной версии : Как остановить действие функции (проверку)?


AlexBob
20.09.2011, 17:08
Здравствуйте!
В первом кадре такой код, который синхронизирует 2 мувиклипа SE_mc с Raduga_mc.
Во втором кадре остается только Raduga_mc, а SE_mc нету при этом во втором кадре функция SyncMovies1 продолжает работать и, естественно, сообщает об ошибке, так как SE_mc найти не может.

Ошибка: TypeError: Error #1009: Cannot access a property or method of a null object reference.

Код:

SE_mc.stop();
SE_mc.visible=False;

function SyncMovies1(event:Event):void
{
if (Raduga_mc.currentFrame == 7)
{
SE_mc.gotoAndPlay(1);
SE_mc.visible=true;
}
}
Raduga_mc.addEventListener(Event.ENTER_FRAME, SyncMovies1);

Осознаю ,что это ламерство, но что делать, прошу помочь :)

andrew911
20.09.2011, 17:17
if(SE_mc)
{
...
}

AlexBob
20.09.2011, 17:43
а поподробней?

goodguy
20.09.2011, 18:38
SE_mc.visible=False;
и это работает?
false пишется с маленькой буквы.

SE_mc.stop();
SE_mc.visible=False;

function SyncMovies1(event:Event):void
{
if (Raduga_mc.currentFrame == 7)
{
SE_mc.gotoAndPlay(1);
SE_mc.visible=true;
Raduga_mc.removeEventListener(Event.ENTER_FRAME, SyncMovies1);
}
}
Raduga_mc.addEventListener(Event.ENTER_FRAME, SyncMovies1);

AlexBob
20.09.2011, 18:51
Да, так и есть, надо с маленькой.
Тем не менее, решения пока не нашел. Может кто подскажет?

goodguy
20.09.2011, 18:57
ну.. как бы я решение в предыдущем (http://www.flasher.ru/forum/showpost.php?p=1032865&postcount=4) посте выложил

AlexBob
20.09.2011, 19:10
Спасибо огромное!
всё работает!
Не знаю почему сразу не заметил.

Ещё один вопрос. У меня в функции прописан movieClip SE_mc, если мне, например, понадобится синхронизировать другие клипы с другими названиями. Функцию переопределять нельзя. Как правильно сделать?