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

Регистрация: Feb 2011
Сообщений: 100
По умолчанию поведение gotoAndPlay

Написал простой код, чтобы по достижении определённого кадра клип перескакивал к своему началу.
Проблема в том, что каким-то образом в момент перескока на первый кадр последний и первый кадры накладываются на экране. Почему так происходит и как исправить? Вот код
Код AS3:
package 
{
	import flash.display.MovieClip;
	import flash.display.Sprite;
	import flash.events.Event;
 
	/**
	 * ...
	 */
	public class Main extends Sprite 
	{
		private var cl:MovieClip;
 
		public function Main():void 
		{
			if (stage) init();
			else addEventListener(Event.ADDED_TO_STAGE, init);
		}
 
		private function init(e:Event = null):void 
		{
			removeEventListener(Event.ADDED_TO_STAGE, init);
			// entry point
			// s_Guard01 - тот самый тестовый клип, создан просто во flash IDE
			cl = new s_Guard01();
			cl.addEventListener(Event.ENTER_FRAME, onChange);
			cl.x = 100;
			cl.y = 100;
			addChild( cl );
		}
 
		private function onChange(e:Event):void 
		{
			if ( cl.currentFrame > 80 ) {
				cl.gotoAndPlay( 1 );
			}
		}
	}
 
}
Я не замечал наложений, пока в кадрах не появились полупрозрачные картинки. На них очень хорошо видно наложение двух картинок.