begin process at 2012 05 27 06:51:20
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

créer une boucle


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

créer une boucle

samedi 14 juillet 2007 à 12:58:53 | créer une boucle

mikouRoux

Salut,

Je ne comprend pas comment synthétiser les lignes de codes suivantes en une petite boucle claire qui incrémente le numéro du dot.._mc.
Quelqu'un a t-il une solution ?

function onEnterFrame(){
    this.dot1_mc.onEnterFrame = light(focus_mc=dot1_mc);
    this.dot2_mc.onEnterFrame = light(focus_mc=dot2_mc);
    this.dot3_mc.onEnterFrame = light(focus_mc=dot3_mc);
    this.dot4_mc.onEnterFrame = light(focus_mc=dot4_mc);
    this.dot5_mc.onEnterFrame = light(focus_mc=dot5_mc);
    this
.dot6_mc.onEnterFrame = light(focus_mc=dot6_mc);

    this
.dot7_mc.onEnterFrame = light(focus_mc=dot7_mc);
    this.dot8_mc.onEnterFrame = light(focus_mc=dot8_mc);
    this.dot9_mc.onEnterFrame = light(focus_mc=dot9_mc);
    ...
    this.dot99_mc.onEnterFrame = light(focus_mc=dot99_mc);
    this.dot100_mc.onEnterFrame = light(focus_mc=dot100_mc);
}

Ce code appel un fonction 'light' en lui envoyant comme variable (focus_mc) le nom de plusieur movie clip qui (dot1_mc, dot2_mc, dot3_mc... dot100_mc)

Merci d'avance
MikouRoux
samedi 14 juillet 2007 à 14:17:11 | Re : créer une boucle

embalmer

Salut,

Il faut aussi penser à limiter au maximum le nombre d'EnterFrame dans ton code, ici il ne faut surtout pas en créer autant, tu risque de de faire ramer méchament ton anim. Bon enfin bref... essaye plutôt :

function light(mc:MovieClip){
    trace(mc);
}
onEnterFrame = function(){
    for(i=1; i<=100; i++){
        this.light(this['dot'+i]);
    }
}

Et quand (si) tu n'a plus besoin de ton enterFrame il faut bien penser à le supprimer avec :

delete this.onEnterFrame;

++
samedi 14 juillet 2007 à 14:20:50 | Re : créer une boucle

embalmer

Réponse acceptée !
Salut,

Il faut aussi penser à limiter au maximum le nombre d'EnterFrame dans ton code, ici il ne faut surtout pas en créer autant, tu risque de de faire ramer méchament ton anim. Bon enfin bref... essaye plutôt :

function light(mc:MovieClip){
    trace(mc);
}
onEnterFrame = function(){
    for(i=1; i<=100; i++){
        this.light(this['dot'+i]);
    }
}

Et quand (si) tu n'a plus besoin de ton enterFrame il faut bien penser à le supprimer avec :

delete this.onEnterFrame;

++
samedi 14 juillet 2007 à 18:09:49 | Re : créer une boucle

mikouRoux

Réponse acceptée !
Re,

Merci beaucoup pour ta proposition.
Tel que tu l'a écris, ca ne fonctionnait pas tout à fait, mais j'ai modifié légerement le code et ca fonctionne nickel :

function onEnterFrame
(){
    for(i=1; i<=16; i++){
        light(focus_mc=this['dot'+i+'_mc']);
    }
}

function light(){
    dx = (focus_mc.
_x-_xmouse);
    dy = (focus_mc.
_y-_ymouse);
    focus_mc.
_alpha = Math.sqrt(dx*dx+dy*dy);
    focus_mc.
_height = 30*(200-focus_mc._alpha)/300;
    focus_mc.
_width = 30*(200-focus_mc._alpha)/300;
    focus_mc.
_alpha = 100*(200-focus_mc._alpha)/200;
    if (focus_mc.
_width<6){
        focus_mc.
_width=6;
        focus_mc.
_height=6;
    }
}


Sinon, je ne peux pas faire de 'delete this.onEnterFrame' parce que la fonction light doit être continuellement rafraichie pour réagir au mouvements de la souris.

++
MikouRoux




Cette discussion est classée dans : boucle, mc, focus, onenterframe, light


Répondre à ce message

Sujets en rapport avec ce message

processeur qui tourne a fond a cause d'une boucle [ par rastagnol ] bonsoir, voila, j'ai une fonction qui me permet de deplacer un MC avec deceleration mais mon soucis c'est que lorsque je lance l'animation mon cpu tou Menus dynamiques capricieux... [ par mikile ] Bonjour à tous!Je suis novice concernant l'AS et je n'arrive pas à trouver la solution.Je possède 3 menus dynamiques (avec items) ainsi que 3 archives Probleme de selection de texte/ focus/Selection.. [ par simojava ] Bonjour,Je voudrais faire une action sur une partie d'un TextField définie par Selection.getBeginIndex() et Selection.getEndIndex() et nonsur l<fon Probleme avec un onRelease [ par blondsummer ] Je voudrais faire en sorte que des liens soient créés en fonction de la boucle, maisou c toujours le dernier chiffre de la boucle qui est pris en comp phototèque [ par nchahat ] Salut tous le monde. J'ai rédigé deux fonctions, l'une pr agrandir  et l'autre pour réduire une image.je duplique avc un duplicate movie le premier c Utiliser un swf comme preloader en attendant que les autres swf se chargent... [ par jujuwiwi ] Voila en fait je veux faire un swf qui s'affiche en attendant que tout les swf se chargent. Mais je ne comprend pas j'ai des problèmes. Déjà quand je deux onEnterFrame [ par whouu ] Bonjour a tous , jai un souci voici mon code : mc.onEnterFrame = function() { if (_root.A.hitTest(B)) {< onEnterFrame ne reconnait pas variable dans boucle for [ par FredoLaFrite ] Bonjour à tous ! C'est ma premiere fois sur ce forum, je vais donc essayer d'être le plus clair possible à propos de ce probleme qui me bloque depuis Damier avec une boucle [ par sliverman ] Bonjour à tous, Je suis en train de m'entrainer un peu mais la je bloque, je fais tout en actionscript 2.0, donc je fait this.createEmptyMovieClip("mo fonction qui fait ramer ma machine [ par mikouRoux ] Salut à tous,Merci beaucoup pour votre aide ces dernier jours. Sans vous je ne serais jamais parvenu à faire mon petit programme.A présent, tout comme


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,310 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales