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

Регистрация: Feb 2011
Сообщений: 100
Нет, мне нужна одна общая очередь. Вообще зря я про пачки написал, они уже другая история.
Сначала мне надо разобраться с одиночными элементами. Вот пример:
Код AS3:
package 
{
	import com.greensock.TimelineLite;
	import com.greensock.TweenLite;
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.utils.setTimeout;
 
	/**
	 * ...
	 * @author Dmitry Minaev
	 */
	public class Main extends Sprite 
	{
		private var _line: TimelineLite = new TimelineLite();
		private var s: Sprite = new Sprite();
		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);
			// рисуем точку, которую будем двигать по таймлайну
			s.graphics.beginFill(0);
			s.graphics.drawCircle(0, 0, 3);
			s.x = 100;
			s.y = 200;
			addChild(s);
			// иммитируем работу очереди
			// первое действие происходит сразу - точка передигается правее
			_line.append( new TweenLite(s, 1, { x: 130 } ) );
			// второе действие происходит когда-то потом, неизвестно когда, эмулируем его задержкой
			setTimeout(_secondMove, 3000);
		}
		// двигаем точку левее. Вот этот код не срабатывает
		private function _secondMove(): void {
			_line.append(new TweenLite(s, 1, { x: 80 } ) );
		}
	}
}