Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Кто нить использывал .tween ? (http://www.flasher.ru/forum/showthread.php?t=86386)

HN4E7O 13.10.2006 17:51

Кто нить использывал .tween ?
 
Есть такая проблема....
Делаю типа сайта моды... И усер должен в меню выбрать серию нажав на кнопку в мувик подгружаю другой который начинает прокручивать фотки моделей из этой серии.... Фотографии двигаються по экрану при помощи [ new Tween] по "X" и по "Y"... И доходя до нужной позиции фото исчезает.... Всё хорошо...

Но когда закрываю этот мувик removeMovieClip(_level0.newClip); апотом подгружаю другую серию... то параметры Tween с прошлого мувика гдето летают...
Код:

intervalId = setInterval(mover2, 5000);
var mover2:Function = function(){
    if(cualImagen>fotosXml.firstChild.childNodes.length-2)cualImagen=0;
    else cualImagen++;
    var nombre:String  =  "fotoFicha"+cualImagen;
    var  esteClip:MovieClip = mcF[nombre];
    esteClip.swapDepths(this.getNextHighestDepth()+1000);
    esteClip.onPress = function(){trace(this._name)}
    esteClip._x = randRange(0-esteClip._width,Stage.width);
    esteClip._y = randRange(0-esteClip._height,Stage.height);
    newX = randRange(62,745.8-esteClip._width);
    newY = 192.3;
    newT = randRange(10,13);
    var tweenAlpha:Tween = new Tween(esteClip, "_alpha", mx.transitions.easing.Strong.easeOut, 0,100, 2, true);
      var tweenY:Tween = new Tween(esteClip, "_y", mx.transitions.easing.Strong.easeOut, esteClip._y,newY, newT, true);
    var theClassName:String = tweenY.toString();
    tweenY.onMotionChanged = function() {
            trace( this.position+"  :  "+ esteClip);
        };
    var tweenX:Tween = new Tween(esteClip, "_x", mx.transitions.easing.Strong.easeOut, esteClip._x,newX, newT, true);
        tweenX.onMotionChanged = function() {
            if(this.time>5){
            tweenX.stop();
            var tweenXx:Tween = new Tween(esteClip, "_alpha", mx.transitions.easing.Strong.easeOut, 100,0, 8, true);
            }
        };

close.onPress = function (){
    clearInterval(intervalId);
    tweenY.stop();
    tweenX.stop();
    tweenA.stop();
        for(n in mcF){
            trace(mcF[n])
            removeMovieClip(mcF[n]);
            trace(mcF[n])
        }
    }
}


Есть вариант Tween.stop(); но так как tween не привязан к клипу и всегда одно и тоже название то выключает тока первый... а остальные доходят до конца...
Есть такой вариант как esteClip.tween("_y",newY,8,"easeOutElastic")
но чтото он у меня не работает...

А может кто знает как подругому привязать Tween к каждому клипу или засунуть его куда нить чтобы потом обнаружить и остановить ???

Помогите если моджете... а то уже второй день в ступоре...
Спасибо.




Afon 13.10.2006 18:19

Я как-то тоже сталкивался с проблемой корректной остановки Твинов... тоже дня два искал выход. Лично для меня тогда выходом стало использование Интервалов как альтернативы.

А Твины использую там, где нет необходимости их внезапно останавливать или перенаправлять.

silin 13.10.2006 20:00

посмотри метод mx.transitions.Tween.stopEnterFrame()
в похожей ситуации решил вопрос с его помощью: все запущенные твины кладем в массив (по onMotionFinished удаляем), а при необходимости избавится вызываем stopEnterFrame() для всех..
другой вариант пользовать mx.effects.Tween: там запускается только один интервал (но меняются несколько параметров), в каких-то раскладах проще его контролировать..

HN4E7O 14.10.2006 04:43

Вот!!!:victory:
Код:

#include "lmc_tween.as"
mc.tween(["_x","_y","_alpha"],[565,192.,100],6,"easeOutQuad",0,onEnd);
function onEnd(clip:MovieClip){
                trace("onEnd");
}

читать тут http://laco.wz.cz/tween/
тут качать http://laco.wz.cz/tween/down.php?f=f...c_tween120.zip

Можно делать паузы в tween , куча разных параметров... как с мувиками так и с TextField... Вообщем очень мило

Der Grossen 15.10.2006 05:32

http://hosted.zeh.com.br/mctween/
+ твин по безье и поддержка восмерочных фич

HN4E7O 15.10.2006 14:22

Чудненько!!!


Часовой пояс GMT +4, время: 14:47.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.