Code non fonctionnel sous Flash MX

cs_z0z0 Messages postés 11 Date d'inscription mercredi 15 décembre 2004 Statut Membre Dernière intervention 12 juillet 2005 - 9 juil. 2005 à 11:00
remus38 Messages postés 69 Date d'inscription vendredi 17 septembre 2004 Statut Membre Dernière intervention 7 mai 2006 - 13 juil. 2005 à 08:45
J'apprends actuellement (avec difficulté) l'actionscript, et un problème s'est posé,alors que je voulais réalisert une animation extrémement simple.

Je voulais déclencher l'avancement d'un cercle d'un magnifique orange lorsque je cliquais sur un bouton. Seulement, ne voulant pas utiliser de Motion Twin, j'avais créé une fonction, qui s'avère non fonctionnelle, pour une raison que je suis bien incapable de comprendre).

J'ai 3 calques: function, rond, et bouton. Le rond est un clip, et le bouton un bouton ^^.

Code de fonction:

MovieClip.prototype.avance = function(xfois){
for(i=1;i>xfois;i++){
this._x = this._x+5;
}
};
stop();

Code du bouton:

on(release){
rond.avance(10);
}

-----

Voilà, en espérant que vous me livriez un code fonctionnel, tout en m'expliquant ce que j'ai fait de mal :p.

4 réponses

cs_z0z0 Messages postés 11 Date d'inscription mercredi 15 décembre 2004 Statut Membre Dernière intervention 12 juillet 2005
9 juil. 2005 à 11:01
Euh...

Je rajoute que le fla est disponible ici:

http://www.kokoom.com/z0z0/Portfolio/Flash1/flash4.fla
0
remus38 Messages postés 69 Date d'inscription vendredi 17 septembre 2004 Statut Membre Dernière intervention 7 mai 2006
12 juil. 2005 à 13:01
Il faut d'abord que tu saches qu'une boucle for s'effectue tres
rapidement (je dirais meme instantanément vu le nombre de boucle
qu'elle fait dans ton cas)

Donc si tu dis que ton code n'est pas fonctionnel je suppose que tu
veux dire que ton rond se deplace instantanément sans y aller
progressivement

donc si tu veux qu'il se deplace et que l'on voit son deplacement il faut que tu mette du code dans le main (onEnterFrame)

je te laisse continuer tout seul mais je reste dispo si tu as encore besoin d'aide
0
cs_z0z0 Messages postés 11 Date d'inscription mercredi 15 décembre 2004 Statut Membre Dernière intervention 12 juillet 2005
12 juil. 2005 à 20:34
Merci beaucoup d'avoir répondu, mais il ne s'agit pas de ça: s'il y avait eu un quelconque changement, celà ne m'aurait pas vraiment importé, et je serais d'une manière ou une autre parvenu à mes fins. Non. Il ne se passe tout simplement rien. Nada. J'ai mis des couleurs pour le hover et le active du bouton pour vérifier que je cliquais bien, et le résultat ne vient pas de là. Je clique, mais la fonction ne se déclenche pas, ou n'est pas fonctionnel.
0
remus38 Messages postés 69 Date d'inscription vendredi 17 septembre 2004 Statut Membre Dernière intervention 7 mai 2006
13 juil. 2005 à 08:45
Bon j'ai regarde ton code et il y a plusieurs petit truc qui vont pas :
1- ta boucle for est mauvaise (ou plutot inversée) : c'est i < xfois et non x > xfois sinon ca ne sera jamais vrai et donc ... ca fera rien
2- ton 'rond' n'est pas defini. Dans les proprietes c'est marqué que c'est une occurence de rond mais ca na veut pas dire que c'est son nom. Il faut donc le rajouter.
3- Enfin pour 'MovieClip.prototype.avance' je n'ai vu prototype defini nul part,en plus il me semble que c'est sur le rond qu'il faut qu'elle s'execute cette fonction donc tu peux mettre 'rond.avance' et ca devrait marcher.
Voila si tu as besoin de plus de details demande moi
0