Définir une fonction dans Flash

Résolu
teatime972 Messages postés 5 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 18 septembre 2006 - 5 sept. 2006 à 21:16
teatime972 Messages postés 5 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 18 septembre 2006 - 5 sept. 2006 à 22:52
Bien le bonjour à tous.
Avant tout je tiens à remercier tous les acteurs de ce site, qui m'a apporter une grande aide.

Travaillant ces temps ci sur les fonctions je me posais une question toute bête à savoir : si lors de la définition d'une fonction tous les types de variables présents dans flash sont accessibles plus précisement si le type MovieClip est accepté.

Ex : le code suivant présente 2 fonctions écrites sur la première image de l'animation (_root).
La fonction montreAll() permet de masquer tous les moviesClip placés sur la première image de l'animation.
La fonction placeBouton() affiche le movieClip passé en paramètres et le positionne suivant les coordonnées.

function montreAll(){
    _root.mc1_visible=true;
    _root.mc2_visible=true;
    _root.mc3._visible=true;
}
function placeBouton(mcPar:MovieClip){
    _root.mcPar._visible=true;
    _root.mcPar._x=40;
    _root.mcPar._y=106;
}

Désolé je si je suis long mais je veux bien me faire comprendre.
Un bouton présent dans le movieClip mc1 appelle les 2 fonctions et exécute d'autre actions comme le montre le code ci dessous:

on(release){
    _root.cacheAll();
    _root.placeBouton(mc1);
    /*instructions*/
}

Donc en clair (tout ça pour dire ca ) le code du bouton présent dans un moviClip doit permettre de masquer (invisible) les autre movieClip et de positionner le movie suivant les coordonnées en le mettant sur visible.

Le problème c'est que lors de l'appel de ma deuxième fonction ( placeBouton() )cette derniere ne s'exécute pas, alors que cacheAll() la première fonctionne à merveille.

J'ai d'abord pensé à une erreur de syntaxe pur et j'ai essayé : maFonction(var mcPar:Movie Clip) et c'est la que l'erreur de syntaxe est apparu dans mon panneau sortie avec mes actions trace() de la première fonction. Donc je me pose la question de savoir si le type movieClip est accepté dans une fonction ou est ce que je fais une erreur quelque part. Merci d'avance je retourne à mon code et dans les tutoweb voir ou je pèche.

 Flashment Votre !!

1 réponse

teatime972 Messages postés 5 Date d'inscription lundi 8 novembre 2004 Statut Membre Dernière intervention 18 septembre 2006
5 sept. 2006 à 22:52
Vous avez surement remarquez l'erreur de copier coller au niveau du code. Milles excuses vous l'aurez compris la fonction montreAll() affiche tout.
Flash accepte le type MovieClip  tout comme il accepte ausi l'appel de plusieur fonction,et mon erreur étais au niveau du script de la fonction le code final ressemble à ceci :

sur la première image, au niveau _root :
function montreAll(){
    _root.mc1_visible=true;
    _root.mc2_visible=true;
    _root.mc3._visible=true;
}
function placeBouton(mcPar:MovieClip){
    mcPar._visible=true;
    mcPar._x=40;
    mcPar._y=106;
}

sur le bouton dans le clip
on(release){
    _root.cacheAll();
    _root.placeBouton(_root.mc1);
    /*instructions*/
}

la je crée la fonction qui devra mettre les clip à leurs position d'origine. Merci
3
Rejoignez-nous