Сделайте так, чтобы два массива запускались одновременно - PullRequest
0 голосов
/ 10 января 2012

У меня два массива содержит несколько клипов. Я использовал цикл для успешного ввода первого массива в объект временной шкалы. Но потом я понял, что мне делать со вторым массивом, который мне нужен, чтобы запускать их одновременно, и каждый массив должен иметь различное назначение в x и y.

Представьте себе баннер размером 745x100px, мне нужно анимировать разные фрагменты фильмов от сторон до места назначения.

пример кода:

import com.greensock.*;
import com.greensock.easing.*;
import flash.display.MovieClip;


var mainArray:Array = [amcMC, tantrumMC, blokMC, misMC, futMC, laoMC, cauMC, deepMC, plusMC, noMC, copMC ];
var therapyArray:Array = [kurtenMC, panacMC, dubMC, lowMC, dtoxMC, hunMC, mopMC, zenMC, hanMC, conMC ];

var timeline:TimelineMax = new TimelineMax({repeat:-1});

for(var key:String in mainArray){
   var mcMain:MovieClip = MovieClip(mainArray[key]);
   timeline.append(TweenMax.from(mcMain,1 ,{x:-200 y: 40, scaleX:0.1, blurFilter:{blurX:20}, ease:Back.easeOut}));
   timeline.append(TweenMax.to(mcMain,cas,{x:-200, y: 40, delay:1, blurFilter:{blurX:20}, ease:Back.easeOut}));   
}

Мне нужно наложить несколько разных анимаций на второй массив и запускать их одновременно или с небольшим смещением.

Ответы [ 2 ]

2 голосов
/ 10 января 2012

Использовать insertMultiple.Это позволяет добавлять несколько анимаций в одну и ту же точку на временной шкале.Вы даже можете использовать настройки для их равномерного разнесения с равными задержками, если вам нравится этот метод.

Вот пример:

var timeline:TimelineMax = new TimelineMax({repeat:2, yoyo:true, repeatDelay:1.5});
timeline.append( TweenLite.from(blackBar, 0.8, {x:550}) );
timeline.insertMultiple( TweenMax.allFrom([logo, timelineWord, maxWord, byGreenSock], 0.5, {autoAlpha:0}, 0.25), 0.6);
timeline.insertMultiple( TweenMax.allFrom(lettersArray, 1, {y:"-30", alpha:0, ease:Elastic.easeOut}, 0.04), 1.4);

из документации greensock:

insertMultiple () и appendMultiple () предоставляют некоторые очень мощные возможности секвенирования, позволяющие добавить массив анимаций (используя экземпляры TweenLite / Max или новый сокращенный синтаксис, например [mc, 1, {x: 100}]) и при необходимости выровняйте их в режимах ПОСЛЕДОВАТЕЛЬНОСТЬ или СТАРТ и даже ошеломите их, если хотите.Например, чтобы вставить 3 анимации во временную шкалу, выровняв их время начала, но потрясая их на 0,2 секунды,

и ссылку на документы здесь: http://www.greensock.com/as/docs/tween/_timelinemax.html

1 голос
/ 10 января 2012

Вы можете использовать 2 объекта TimelineMax вместе с таймером. Добавьте слушателя к таймеру, который при вызове загрузит 2nd TimelineMax со вторым массивом. Ваше смещение будет таким, каким вы установили задержку таймера.

...