2009-06-30 9 views
0

me semble avoir du mal avec TweenLite en AS2.AS2 TweenLite onComplete

J'ai créé une classe que j'appelle le scénario principal. Dans la classe, j'ai chargé des images et une fois qu'elles sont chargées, je veux passer entre elles. J'appelle (dans ma classe) le code suivant lorsque les images ont fini de charger:

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

J'ai alors la fonction suivante pour faire la boucle de fondu:

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}); 
    } 

Cette fonction ne fait jamais touché mais cette première image s'estompe.

Répondre

0

Votre code fonctionne parfaitement avec moi .. Je fais encore moi-même quelques petites choses AS2 donc j'ai pensé que j'essaierais de vous répondre. J'ai mis trois picture-mc sur scène appelés: loadedimg1, loadedimg2 et loadedimg3. Ensuite, j'ai créé un MovieClip vide avec une classe qui s'appelle 'test'. La classe contient le code suivant:

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}); 
} 
}; 

Peut-être que vous pouvez nous donner un exemple plus détaillé de la façon dont vos classes sont organisées et la profondeur de votre application est codée. Essayer de ne pas perdre la portée était toujours la priorité principale dans AS2. :(

J'espère que je peux aider un peu plus tard ...

Questions connexes