Показать сообщение отдельно
Старый 25.12.2013, 23:27
dendead вне форума Посмотреть профиль Отправить личное сообщение для dendead Найти все сообщения от dendead
  № 1  
Ответить с цитированием
dendead

Регистрация: Aug 2013
Сообщений: 73
По умолчанию Останавливается проигрывание gotoAndPlay( )

Доброго времени суток. Никак не могу понять один свой косяк.

Есть две функции. Одна из них регистрирует событие Event.ENTER_FRAME в мувклипе clip:

Код AS3:
        public function eatingAnimation( ):void {
		        clip.addEventListener(Event.ENTER_FRAME, animation);
        }
Другая проигрывает анимацию до конца кадров мувклипа, после чего выполняет какие-то действия и удаляет регистрацию:

Код AS3:
		public function animation(e:Event):void {	
			clip.gotoAndPlay("animation");
 
			if (clip.currentFrame == clip.totalFrames) {
			      trace("ВСЕ КАДРЫ ПРОИГРАНЫ");
			      // КАКИЕ-ТО ДЕЙСТВИЯ
			      mMouth.removeEventListener(Event.ENTER_FRAME, mouthAnimEating);	// удалить регистрацию приёмника
			}
		}
А проблема в том, что после регистрации события, timeline переходит на следующий кадр после "animation" и останавливается. При этом, если я использую:
Код AS3:
clip.play( );
вместо:
Код AS3:
clip.gotoAndPlay("animation");
анимация проигрывается но, естественно, с самого начала мувклипа. Именно при переходе по кадрам начиная от метки "animation" воспроизведение останавливается, также и при:
Код AS3:
clip.gotoAndPlay(номер_кадра);