Вопрос

Кажется, у меня проблемы с TweenLite в AS2.

Я создал класс, который вызываю на основной временной шкале.В классе я загрузил изображения, и как только они загрузятся, я хочу плавно переходить между ними.Я вызываю (внутри своего класса) следующий код, когда изображения завершили загрузку:

TweenLite.to(_root["loadedimg1"], 1, {_alpha: 100, 
            onComplete:doImageLoop, onCompleteParams:[1], onCompleteScope:this});

Затем у меня есть следующая функция для выполнения цикла затухания:

public function doImageLoop(imageId:Number):Void 
{
    trace(imageId);
    var newImageId:Number;
    TweenLite.to(_root["loadedimg" + imageId], 1, {delay:2, _alpha: 0});
    if ((imageId + 1) > queueCount) {
        newImageId = 1;
    } else {
        newImageId = imageId + 1;
    }
    TweenLite.to(_root["loadedimg"+newImageId], 1, {delay:3, _alpha: 100, 
              onComplete:doImageLoop, onCompleteParams:[newImageId], 
              onCompleteScope:this, overwrite:0});
    }

Эта функция никогда не срабатывает, но первое изображение действительно исчезает.

Это было полезно?

Решение

Ваш код отлично работает со мной.Я сам все еще занимаюсь небольшими делами по AS2, поэтому решил попытаться вам ответить.Я разместил на сцене три изображения-MC под названием: loadedimg1, Loadedimg2 и Loadimg3.Затем я создал пустой MovieClip с подключенным к нему классом под названием «test».Класс содержит следующий код:

import gs.TweenLite;

class test extends MovieClip {
private var queueCount : Number = 3;

function test() {
    TweenLite.to(_root["loadedimg1"],1,{_alpha:100, onComplete:doImageLoop, onCompleteParams:[1], onCompleteScope:this});
}

function doImageLoop(imageId:Number):Void {
    trace(imageId);
    var newImageId:Number;
    TweenLite.to(_root["loadedimg"+imageId],1,{delay:2, _alpha:0});
    if ((imageId+1)>queueCount) {
        newImageId = 1;
    } else {
        newImageId = imageId+1;
    }
    TweenLite.to(_root["loadedimg"+newImageId],1,{delay:3, _alpha:100, onComplete:doImageLoop, onCompleteParams:[newImageId], onCompleteScope:this, overwrite:0});
}
};

Возможно, вы сможете дать нам более подробный пример того, как устроены ваши классы и насколько глубоко закодировано ваше приложение.Попытка НЕ ​​потерять масштаб всегда была главным приоритетом в AS2.:(

Надеюсь, что смогу помочь немного позже...

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top