Анимиране с AS (tween class)
Здравейте, здравейте. Тук ще научите как да анимирате нещо с AS2. Това е един от най-професионалните начини за анимиране, благодарение на който много от Флаш саитовете изглеждат толкова добре. Информацията за урока идва от actionscript.org . Да се захващаме :)
Tween Class-a има следната конструкция :
someTweenID = new mx.transitions.Tween(object, property, function, begin, end, duration, useSeconds)
като тук обаче това изглежда доста сложно .. не е така :) . Ето малко разяснения :
object = името на клипа, който желаем да анимираме
property = стойност която да променяме (пример : _x )
function = вида easing class (това ще определи и вида анимиране, по доло повече :) )
begin = начална стойност за анимиране (пр: начална стойност за _x)
end = крайна стойност за анимиране (пр: крайна стойност за _x)
duration = указва колко секунди/фреймове ще трае анимацията
useSeconds = индикатор тип Boolean (тоест има стойности true или false), като ако стойноста е false, то анимацията се отнася до frames, true - seconds . По подразбиране стойноста е false.
Ето сега минаваме към работещ пример :) На сцената ни трябва да има бутон с име myButton_btn и обект (мууви клип) с име ball_mc. На фрейм едно поставяме кода :

myButton_btn.onRelease = function() {
tweenBall();
};
function tweenBall() {
easeType = mx.transitions.easing.Bounce.easeOut;
var begin = 20;
var end = 380;
var time = .5;
var mc = ball_mc;
ballTween = new mx.transitions.Tween(mc, "_x", easeType, begin, end, time, true);
}

Обяснението е проститичко .. създаваме функцията която ще сте стартиря при натискане на бутона. Тя ще аткивира анимацията. След това задаваме всички променливи, които се използват за tween class-a(а именно easyType, begin, end, time, mc). Така кода е много по изчистен и можем да променяме нещо по-лесно.
Сега разяснение на тази част от кода :
.. Bounce.easeOut ..

АС2 подържа 6 категории и 3 типа "движение" на анимацията. Категориите са : Strong,Back,Elastic,Regular,Bounce,None а видовете са easeIn easeOut easeInOut easeNone . None и easeNone работят само едно с друго. Можем да накараме анимацията непрекъснато да се "върти", преди последна } поставяте :
ballTween.onMotionFinished = function() {
this.yoyo();
};

Пример(примера малко кофти, ама отдавна го правих :( )
Ако имате проблеми с урока или искате разяснения питаите във форума :)
Наздраве :)







/ Трябва да сте регистриран за да напишете коментар /