Attente de la fin de l'animation d'un movieclip avant de reprendre l'execution d

cs_diogen Messages postés 9 Date d'inscription dimanche 4 décembre 2005 Statut Membre Dernière intervention 28 septembre 2007 - 5 déc. 2005 à 19:10
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 - 6 déc. 2005 à 21:43
Bonjour a tous
Voici mon premier message sur ce forum bien pratique.
Je précise que je ne maitrise pas bien l'actionScript et que le structure de mon application est peut etre mauvaise....

Celle-ci se compose d'un .fla et d'un .as.
Je recupere un movie qui se trouve dans ma librairie grace a la comande : this.attachMovie. Ce movie a comme propiété AS2.0 class le nom de mon fichier .as.
Dans le code de mon fichier .as, j'ai fais 2 focntions :
"LanceAnim" qui appelle la commande this.gotoAndPlay(2); qui me permet de lancer une animation allant de la frame 2 a la frame 10 de mon movieclip.
"Retour" qui appelle la commande this.gotoAndStop(1);
Dans une des frames de mon .fla, j'appelle la fonction "LanceAnim" puis quelques lignes de code plus loin j'apelle la fonction "Retour".
Mon probleme est que je n'ai pas le temps de voir l'animation de de mon movieclip se déroulant donc entre les frames 2 et 10 de celui-ci.
Comment puis-je demander a mon code d'attendre la fin de mon annime avant de poursuivre son execution.
J'espere avoir été suffisament clair!!!
Merci bien.

6 réponses

on_drag_on Messages postés 1236 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 6 octobre 2010
6 déc. 2005 à 00:24
salut,

regarde ds l'aide sous _currentframe ...

(input._currentframe == input._totalframes ... )

a++.
0
cs_diogen Messages postés 9 Date d'inscription dimanche 4 décembre 2005 Statut Membre Dernière intervention 28 septembre 2007
6 déc. 2005 à 01:11
merci pour ta reponse... J'ai regardé un peu ce qu'il était possible de faire avec _currentframe mais je suis pas sur d'être sur la bonne route...
Pour que ma question soit plus claire, voici un bout du code simplifié:
//Partie de la Frame1 de ma scene :
for(index=0;index<50;index++){
// Le movie clip Id_Carte vient de ma librairie et est rattaché a ma classe cartes.as
tab[index+1] = this.attachMovie("Id_Carte", index+1, this.getNextHighestDepth());
}
//Partie de la Frame2 de ma scene :
function tourordi(alle1:Number,alle2:Number) {
tab[alle1].retourneimage(); //fonction appartenant a ma classe cartes.as ne faisant appelle qu'a un gotoAndPlay(2); (anime de frame 2 à 10)
tab[alle2].retourneimage(); //fonction appartenant a ma classe cartes.as ne faisant appelle qu'a un gotoAndPlay(2); (anime de frame 2 à 10)
while(mc2._currentframe ! = mc2._totalframes ){}
if (compare(mc1, mc2) != true) {
mc1.retourneimage2(); //fonction appartenant a ma classe cartes.as ne faisant appelle qu'a un gotoAndStop(1);
mc2.retourneimage2(); //fonction appartenant a ma classe cartes.as ne faisant appelle qu'a un gotoAndStop(1);
}
}
Mon probleme est que je ne vois pas l'anime appellée par "retourneimage();" L'execution du code passe directement dans la boucle while et ca boucle sur rien biensur (héhé)... et sans cette ligne le code passe à l'appelle à "retourneimage2();" directement aussi!!!!
Merci bien pour votre lecture et pour vos reponses
0
cs_diogen Messages postés 9 Date d'inscription dimanche 4 décembre 2005 Statut Membre Dernière intervention 28 septembre 2007
6 déc. 2005 à 01:19
Oups erreur dans le code ci-dessus:
Il faut remplacer mc1 par tab[all1] et mc2 par tab[alle2]
désolé !!!!
0
on_drag_on Messages postés 1236 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 6 octobre 2010
6 déc. 2005 à 14:14
bah, alors je sais pas ... t'es sûr du " != " plutôt que " == " ?
p-être avec setInterval() , mais bon dans ton cas ça ne vas pas être
précis ... je sais pas désolé :-/

a+.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 1
6 déc. 2005 à 21:39
Est-ce-qu'il y a une image clé pour chaque commande???

bali_balo....=]

Envoie moi ta source si tu veut que je te règle sa...car les erreurs peuvent venir d'ailleurs...et les personnes ne préçisent pas forcément tout...

piniouf85@hotmail.com
0
cs_bali_balo Messages postés 1378 Date d'inscription samedi 9 octobre 2004 Statut Membre Dernière intervention 1 novembre 2010 1
6 déc. 2005 à 21:43
"LanceAnim" puis quelques lignes de code plus loin
j'apelle la fonction "Retour".

VOILA LA GROSSE DIFFERENCE!!!!!!!!!

Quelque ligne plus loin!!!!!!!!!!!!
Donc tu écrit dans la même image clé.
Forcément, flash UPDATE l'écran qu'après avoir lu tout le code...Alor s forcément, si tu appel LanceAni() et après Retour(), il va faire donc Retour() et tu n'auras pas vu les images entre 2 et 10;

Donc , tu as juste à rajouter une image clé à ton image 10 et tu fait:
Retour();

Voilà!!!

bali_balo....=]
0
Rejoignez-nous