begin process at 2012 05 26 12:12:18
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Flash

 > 

Archives

 > 

Effets de texte

 > 

Banniére d'avion ????


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

Banniére d'avion ????

samedi 6 août 2005 à 16:43:11 | Banniére d'avion ????

jeunesailes

Bonjour à tous,

Je vous pose mon petit probléme :
J'ai mis un petit avion qui suit le pointeur de la souris et derriére une série de lettre qui simule une banniére.
Quelles valeurs dois-je modifier pour changer la vitesse de défilement des lettres (pour que ça soit le plus réaliste possible) ?

L'animation est ici :

http://clint11.free.fr/Jeunes_Ailes/Projet/project.html


onFrame (1,afterPlacedObjectEvents) {
    stop();
}
onFrame (2,afterPlacedObjectEvents) {
    // this frame is for init stuff (only called once)
    n = 15;
    Xacc = 10.0;
    Yacc = 10.0;
    Xswing = 1.9;
    Yswing = 10.9;
    loop = 1;
    while (Number(loop)<=Number(n)) {
        set("/char" add loop add ":deltax", 0);
        set("/char" add loop add ":deltay", 0);
        loop = Number(loop)+1;
    }
    loop = 0;
    while (Number(loop)<=Number(n)) {
        setProperty("/char" add loop, _X, _xmouse + (Number(loop) * 12) );
        setProperty("/char" add loop, _Y, _ymouse );
        loop = Number(loop)+1;
    }
    loop = 0;
    while (Number(loop)<=Number(n)) {
        set("/char" add loop add ":Xpos", getProperty ("/char" add loop,_x));
        set("/char" add loop add ":Ypos", getProperty ("/char" add loop,_y));
        loop = Number(loop)+1;
    }
    loop = 1;
    while (Number(loop)<=Number(n)) {
        set("/char" add loop add ":hor_dist", (eval("/char" add loop add ":Xpos"))-eval("/char" add (loop-1) add ":Xpos"));
        set("/char" add loop add ":vert_dist", (eval("/char" add loop add ":Ypos"))-eval("/char" add (loop-1) add ":Ypos"));
        loop = Number(loop)+1;
    }
}
onFrame (3,afterPlacedObjectEvents) {
    "/char0:Xpos" = getProperty("/char0", _x);
    "/char0:Ypos" = getProperty("/char0", _y);
    loop = 1;
    while (Number(loop)<=Number(n)) {
        set("/char" add loop add ":deltax", ((eval("/char" add loop add ":hor_dist") - eval("/char" add loop add ":Xpos") + eval("/char" add (loop-1) add ":Xpos"))/Xacc + eval("/char" add loop add ":deltax"))/Xswing);
        set("/char" add loop add ":deltay", (eval("/char" add loop add ":vert_dist") + eval("/char" add (loop-1) add ":Ypos") - eval("/char" add loop add ":Ypos"))/Yacc + (eval("/char" add loop add ":deltay"))/Yswing);
        set("/char" add loop add ":Xpos", eval("/char" add loop add ":Xpos")+eval("/char" add loop add ":deltax"));
        set("/char" add loop add ":Ypos", eval("/char" add loop add ":Ypos")+eval("/char" add loop add ":deltay"));
        loop = Number(loop)+1;
    }
    // capture new 'mouse positions'
    "/char0:Xpos" = getProperty("/char0", _x);
    "/char0:Ypos" = getProperty("/char0", _y);
    loop = 1;
    while (Number(loop)<=Number(n)) {
        // calculate tangens and angle
        set("/calc1:x",  eval("/char" add (loop-1) add ":Xpos"));
        set("/calc1:y",  eval("/char" add (loop-1) add ":Ypos"));
        set("/calc1:targetx",  eval("/char" add loop add ":Xpos"));
        set("/calc1:targety",  eval("/char" add loop add ":Ypos"));
        call("/calc1:init");
        call("/calc1:tan_to_angle");
        // avoid mc flipping
        if (eval("/char" add loop add ":deltay") > -.05  and eval("/char" add loop add ":deltay") < .05) {
            _root.calc1.angle = 90;
        }
        // Set new properties for each mc
        setProperty("/char" add loop, _x, eval("/char" add loop add ":Xpos"));
        setProperty("/char" add loop, _y, eval("/char" add loop add ":Ypos"));
        setProperty("/char" add loop, _rotation, eval("/calc1:angle")-90);
        //setProperty("/char" add loop, _xscale, 0);
        //setProperty("/char" add loop, _yscale, 0);
        loop = Number(loop)+1;
    }
}
onFrame (4,afterPlacedObjectEvents) {
    gotoAndPlay(3);
}

onFrame (1,afterPlacedObjectEvents) {
    tan = "0";
    stop();
    targetx=0;
    targety = 0;
    x=1;
    y=1;
}
onFrame (3,afterPlacedObjectEvents) {
    setLabel("init");
    if (Number(x)>Number(targetx)) {
        if (Number(y)<Number(targety)) {
            // quadrant1
            gegenkathete = x-targetx;
            ankathete = targety-y;
            baseangle = 0;
        } else {
            // quadrant4
            gegenkathete = y-targety;
            ankathete = x-targetx;
            baseangle = 90;
        }
    } else {
        if (Number(y)<Number(targety)) {
            // quadrant2
            gegenkathete = targety-y;
            ankathete = targetx-x;
            baseangle = 270;
        } else {
            // quadrant3
            gegenkathete = targetx-x;
            ankathete = y-targety;
            baseangle = 180;
        }
    }
    tan = gegenkathete/ankathete;
    // stop();
}
onFrame (5,afterPlacedObjectEvents) {
    setLabel("tan_to_angle");
    if (Number(tan)>1) {
        if (Number(tan)>2.41) {
            if (Number(tan)>5.03) {
                if (Number(tan)>10.15) {
                    angle = 90;
                } else {
                    angle = 84.375;
                }
            } else {
                if (Number(tan)>3.3) {
                    angle = 78.75;
                } else {
                    angle = 73;
                }
            }
        } else {
            if (Number(tan)>1.496) {
                if (Number(tan)>1.87) {
                    angle = 67.5;
                } else {
                    angle = 61.875;
                }
            } else {
                if (Number(tan)>1.22) {
                    angle = 56.25;
                } else {
                    angle = 50.625;
                }
            }
        }
        // ****** end of left branch
    } else {
        if (Number(tan)>0.41) {
            if (Number(tan)>0.67) {
                if (Number(tan)>0.82) {
                    angle = 45;
                } else {
                    angle = 39.375;
                }
            } else {
                if (Number(tan)>0.534) {
                    angle = 33.75;
                } else {
                    angle = 28.125;
                }
            }
        } else {
            if (Number(tan)>0.198) {
                if (Number(tan)>0.3) {
                    angle = 22.5;
                } else {
                    angle = 16.875;
                }
            } else {
                if (Number(tan)>0.098) {
                    angle = 11.25;
                } else {
                    angle = 5.625;
                }
            }
        }
        // ****** end of right branch
    }
    angle = Number(angle)+Number(baseangle)-180;
    stop();
}

Voila en attente de votre aide bonne journée . ; )



Cette discussion est classée dans : add, number, char, eval, loop


Répondre à ce message

Sujets en rapport avec ce message

pbl code passage de Flash 5 à 7 [ par Faatalis ] BonjourJe viens de reprendre un code réalisé en flash5trouvé sur Flash-Francepour l'intégrer à un site réalisé en flash7.Dès que je l'exporte en flash Increment avec un bouton... [ par CladTheKiller ] Je suis en train de faire une animation (un futur jeu) mias je bloque depuis plusieurs heures... Alors j'explique :Sur l'image 13 du troisième calque Cacher une courbe [ par Hansi07 ] Bonjour, J'ai dans ma création une courbe sur laquelle je déplace un bouton semblable à celli-ci:http://www.actionscripts.org/french/advanced/constr Arret d'un slider en loop [ par Straw ] Bonjour à tous ! Après moultes recherhes sur les sliders, j'en ai trouvé un qui semble beaucoup utilisé. Il s'agit de celui avec loop et les butées. clip reste [ par jullienavecdeuxailes ] _root.groupe = 1; _root.zone.onPress = function() {     _root.groupe++;     _root.clip = random(3);     trace(_root.clip);     trace(_root.groupe Attachmovie + gotoAndPlay ??? Pti probleme [ par tynmar ] Bonjour à tous. Je viens de finir un menu déroulant en XML + flash. Chaque case de mon menu est créé par un attachMovie. Lorsque je mets des actions Probleme de code dans flash [ par jeep501 ] Bonjour,Je n'y connais rien en programation et j'ai un probleme avec le code suivant :i = 1;a = 5;b = 2;k = 12;while (Number(i) >= 0){    eval("/drag" PRELOAD D'UN SWF VIA VARIABLES DANS FICHIER TXT ?? [ par visualight ] Bonjouuuuur ^^Objet: Demande d'un coup 2 main ^^Problème: Comment faire un preload d'une animation SWF pour laquelle les variables sont charg&# duplicateMovieClip [ par dvdavan04 ] Bonjour à tous, Je suis nouveau sur le forum et dans flash aussi. J'ai récupérer 1 script sur flashfrance pour dupliquer mon clip b chemin d'un clip [ par atchoumdu51 ] Bonjour Je crée une class , il faut que celle-ci connaisse son chemin sur le swf. j'ai cherché dans l'aide et j'ai trouvé _target qui semblait corresp


Nos sponsors


Sondage...

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 : 0,811 sec (4)

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