Анимация. Часть 3.

Весь код второго кадра:

code mcMain [frame 2]
1 //останавливаем проигрывание
2 stop();
3 //импортируем необходимые для анимации классы
4 import com.greensock.*;
5 import com.greensock.easing.*;
6 //появление адреса
7 TweenNano.from(mcText0, 0.4, { delay: 0.1, overwrite: false, _alpha:0, ease: Sine.easeOut });
8 //появление белой подложки
9 TweenNano.from(mcScreen, 0.4, { delay: 0.1, overwrite: false, _yscale:0, ease: Sine.easeOut });
10 //скрываем клип mcAdd, высветляя картинку
11 TweenNano.from(mcAdd, 0.4, { delay: 0.1, overwrite: false, _yscale:0, ease: Sine.easeOut });
12 TweenNano.from(mcAdd, 0.6, { delay: 0.4, overwrite: false, _alpha:100, ease: Sine.easeOut });
13 //появление картинки
14 TweenNano.from(mcImage, 0.6, { delay: 0.4, overwrite: false, _alpha:0, ease: Sine.easeOut });
15 //картинка со временем уменьшается
16 TweenNano.from(mcImage, 4, { delay: 0.4, overwrite: false, _xscale:«+30», _yscale:«+30», ease: Linear.easeNone });
17 //появление верхней строки текста
18 TweenNano.from(mcText1, 0.6, { delay: 0.2, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Back.easeOut });
19 //появление нижней строки текста
20 TweenNano.from(mcText2, 0.6, { delay: 0.35, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Back.easeOut });
21 //скрываем верхнюю строку текста
22 TweenNano.to(mcText1, 0.4, { delay: 3.85, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Sine.easeIn });
23 //скрываем нижнюю строку текста
24 TweenNano.to(mcText2, 0.4, { delay: 4.0, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Sine.easeIn });
25 //появление клипа mcAdd
26 TweenNano.to(mcAdd, 0.4, { delay: 4.0, overwrite: false, _alpha:100, ease: Sine.easeIn,
onComplete:Play });

Код третьего кадра:

code mcMain [frame 3]
1 //останавливаем проигрывание
2 stop();
3 //импортируем необходимые для анимации классы
4 import com.greensock.*;
5 import com.greensock.easing.*;
6
7 //скрываем клип mcAdd, высветляя картинку
8 TweenNano.from(mcAdd, 0.6, { delay: 0.1, overwrite: false, _alpha:100, ease: Sine.easeOut });
9 //появление картинки
10 TweenNano.from(mcImage, 0.6, { delay: 0.1, overwrite: false, _alpha:0, ease: Sine.easeOut });
11 //картинка со временем уменьшается
12 TweenNano.from(mcImage, 4, { delay: 0.1, overwrite: false, _xscale:«+30», _yscale:«+30»,
ease: Linear.easeNone });
13 //появление верхней строки текста
14 TweenNano.from(mcText1, 0.6, { delay: 0.1, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Back.easeOut });
15 //появление нижней строки текста
16 TweenNano.from(mcText2, 0.6, { delay: 0.25, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Back.easeOut });
17
18 //скрываем верхнюю строку текста
19 TweenNano.to(mcText1, 0.4, { delay: 3.55, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Sine.easeIn });
20 //скрываем нижнюю строку текста
21 TweenNano.to(mcText2, 0.4, { delay: 3.7, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Sine.easeIn });
22 //появление клипа mcAdd
23 TweenNano.to(mcAdd, 0.4, { delay: 3.7, overwrite: false, _alpha:100, ease: Sine.easeIn,
onComplete:Play });

Код четвертого кадра:

code mcMain [frame 4]
1 //останавливаем проигрывание
2 stop();
3 //импортируем необходимые для анимации классы
4 import com.greensock.*;
5 import com.greensock.easing.*;
6
7 //скрываем клип mcAdd, высветляя картинку
8 TweenNano.from(mcAdd, 0.6, { delay: 0.1, overwrite: false, _alpha:100, ease: Sine.easeOut });
9 //появление картинки
10 TweenNano.from(mcImage, 0.6, { delay: 0.1, overwrite: false, _alpha:0, ease: Sine.easeOut });
11 //картинка со временем уменьшается
12 TweenNano.from(mcImage, 4, { delay: 0.1, overwrite: false, _xscale:«+30», _yscale:«+30»,
ease: Linear.easeNone });
13 //появление верхней строки текста
14 TweenNano.from(mcText1, 0.6, { delay: 0.1, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Back.easeOut });
15 //появление нижней строки текста
16 TweenNano.from(mcText2, 0.6, { delay: 0.25, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Back.easeOut });
17
18 //скрываем верхнюю строку текста
19 TweenNano.to(mcText1, 0.4, { delay: 3.55, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Sine.easeIn });
20 //скрываем нижнюю строку текста
21 TweenNano.to(mcText2, 0.4, { delay: 3.7, overwrite: false, _alpha:0, _xscale:30, _yscale:30,
ease: Sine.easeIn });
22 //скрываем логотип
23 TweenNano.to(mcLogo, 0.4, { delay: 3.7, overwrite: false, _alpha:0, ease: Sine.easeIn,
onComplete:Play });
24 //скрываем текст адреса
25 TweenNano.to(mcText0, 0.4, { delay: 3.7, overwrite: false, _alpha:0, ease: Sine.easeIn });
26 //скрываем белую подложку
27 TweenNano.to(mcScreen, 0.4, { delay: 3.7, overwrite: false, _alpha:0, ease: Sine.easeIn });
28 //скрываем картинку
29 TweenNano.to(mcImage, 0.4, { delay: 3.7, overwrite: false, _alpha:0, ease: Sine.easeIn,
onComplete:Play });

В итоге получается следующее:

 

Так как клипы с текстом и картинками во всех кадрах имеют одинаковые имена (mcText0, mcText1 и т.д.), для предотвращения возникновения ошибок лучше сделать промежуточные кадры между сценами с анимацией (рисунок 29).

Рисунок 29. Структура клипа mcMain

Автор: Юрий Гусак.