Exposé Flash 3 - Tir aux canards - BRIGOLLE Mathieu GI04Printemps 07.

Slides:



Advertisements
Présentations similaires
Portée des variables VBA & Excel
Advertisements

Interactivé: L'Action Script.
SI28 FLASH MX Partie 1 Jérémy Dufetre - Ludovic Pilache.
Le Clavier.
Lexique des manœuvres de base pour utiliser à PowerPoint
La fonction Style Permet de créer des types de texte, par exemple
12 novembre 2012 Grégory Petit
Accès aux Métiers de l’Informatique
Créer une animation simple Gif avec ImageReady.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Création d’un programme :
Création d'un diaporama Création d'un diaporama
LOGICIEL PL7 MICRO PROGRAMMATION MISE AU POINT Consignes?
Introduction au paradigme objet Concepts importants surcharge (overload) redéfinition (override) Définition d’une classe Définition des attributs.
1 Objectifs de ce cours (I21) Cours JAVA (I21) -Licence 1 Semestre 2 / Y.Laborde Résumé du cours précédent.
Master 1 SIGLIS Java Lecteur Stéphane Tallard Chapitre 5 – Héritage, Interfaces et Listes génériques.
Gestion des événements liés à la fenêtre et aux périphériques dentrée.
COURS DE PROGRAMMATION ORIENTEE OBJET :
Évènement Petites fonction déjà toute faites Exemple : Construction onLoad (au chargement) = "ce qui doit se passer" onLoad s’exécute toujours dans le.
Création et présentation d’un tableau avec Word 2007
JavaScript Nécessaire Web.
Créer des packages.
14 La gestion d’événements
Tutorat en bio-informatique
LOGICIEL PL7 MICRO PROGRAMMATION MISE AU POINT Consignes?
Faire déplacer le personnage à l’aide des flèches du clavier Il y a plusieurs façon de procéder selon nos attentes, mais en voici une qui est très simple:
Scénario Les scénarios permettent de modifier la position, taille … des calques au cours du temps. Son fonctionnement est très proche de celui de Macromedia.
FLASH MX : séance 1 Sandrine Rabin Nicolas Mollet SI28.
Environnement Flash MX
FLASH MX : séance 1 Vivien FILIPPINI Jeanne VERRE Exposé SI28.
Séance Flash 2 TD SI28 du 16/04/07 Nadel Ben Ghmiss Bruno Prémartin.
Exposé DREAMWEAVER 2 Guillaume DUBREUIL Adrien HADOUX.
EXPOSE N° 1 Thomas CLARISSE Yann GUIGUET.
Padmanaathan Gaayathrie
Réalisation d'un jeu de tir aux Canards Florian GAUCHER Alexandre LEVY SI 28 Exposé Flash 3.
Deuxième Exposé Si Nicolas Debeljak Sun Young Park.
FLASH SEANCE 2 Interaction avec Action Script. Action script Langage de programmation utilisé par Flash. Définir des propriétés, des actions des comportements.
** Flash séance 2 Action script. ** Action Script Ajoute de l’interactivité Permet de contrôler les clips  Langage de programmation orienté objet.
Flash 2 ème séance Interaction François Marliac Mickaël Moreira.
Flash 3 : Le jeu du canard. Objectif de la séance Battre M. Bouchardon au jeu du canard Mettre en pratique les connaissances acquises pour créer un jeu.
Flash MX – Séance 2 Interactions & ActionScript David Rapin Si28 P06.
Dreamweaver le retour Avec Les Formulaires Les Calques
Flash MX er Séance LIU Xinlei GI02.
FORMULAIRES FOMULAIRE Permet à l’utilisateur d’entrer des renseignements le concernant. Utilisation –Inscription sur un site –Mise à jour d’une base.
Télécharger :
Les formulaires Les calques Les comportements Les scénarios Les modèles Les feuilles de styles (CSS) La mise en ligne Les formulaires permettent à l’utilisateur.
Amine Benabdennbi - Omar Berrada Rekhami Flash 2 – Interactivité Avancée Flash 2 Séance de Flash n°2 TD SI28 du 16/04/2007 Amine Benabdennbi Omar Berrada.
 Flash : animations mais aussi interactions  ActionScript : langage de programmation multipliant les possibilités de dynamisme et d’interactivité d’un.
Flash 1 Cariou SandraCoffinot Nicolas. Sommaire : I)Généralités II)Interface de Flash III)Grouper et Dissocier IV)Image clé V)Scénario et calques VI)Symboles.
Télécharger :
Réalisation d’un jeu de tir au canards. Page d’accueil Télécharger les fichiers sources. Importez les images parchemins et fond_shoot Insérer l’image.
Flash : deuxième séance Yannick Bresson Alessandro Camozzato Tien-Quang Tong 22/10/07.
1 Exposé Flash 3 Objectif : Réalisation d’un jeu de tir aux canards Si28 - Paméla GUERIZEC – le 28 novembre 2005.
SI28 Flash 3 Tir’O’Canard 1 Téléchargez le swf : 1.Présentation 5.Fin 4.Jeu 2.Zone de travail 3.Menu.
EXPOSE FLASH 2 SI 28 24/10/2006 Delphine GODREAU Hélène PERRIER.
Sommaire : -A propos des images importées -Les boutons et l’interactivité dans la scène -Textes dynamiques -Les clips (les liaisons) -Les sons -Les composants.
DREAMWEAVER MX2 - Séance 2 Les calques Les comportements Les scénarios Les formulaires Les feuilles de style Les modèles Les cadres Mise en ligne Jérôme.
L’interactivité avec ActionScript. ActionScript Langage de programmation de Flash qui permet de : Gérer des actions et des animations sur la scène Contrôler.
Gaëtan MARANZANA SI28-A04 Flash MX DEUXIEME EXPOSE.
Exposé Flash 3 - Tir aux canards - DIDELOT Guillaume GI02 VAN DER PLAETSEN Virginie GSU04Printemps 06.
Interface Tutorial Flash 2 Par Vincent ² SI28 – P06 Bibliothèque Composant s Panneau actions Barre d'outils Timeline.
Dreamweaver 2 Feuilles de Style CSS Formulaires Calques Comportements
Les calques Les Template (modèles) Les Comportements Les scénarios Les formulaires Les CSS Le serveur Web de l’UTC Présentation.
BOUTET Antoine MARICOT Benoit ActionScript Flash Séance 2.
FLASH Séance 2 Xiaoliang Liang Morgane Le Nan SI28 P05.
Flash – séance 2 Interactions avec Action Script.
Présenté par: François-Xavier LECHEVALIER Fateh BOUGOUFFA
PRESENTATION FLASH 2 MAURIN Marion BERETTI Vincent.
Lundi 20 octobre 2008Séance Flash 21 Séance Flash 2 ActionScript Cheikh DIEDHIOU Germain LEDRUT.
Transcription de la présentation:

Exposé Flash 3 - Tir aux canards - BRIGOLLE Mathieu GI04Printemps 07

Exposé Flash 3 Objectif : Réalisation dun jeu de tir aux canards

Quelques mots sur la POO1. - Quest-ce que la POO ? Technique de programmation Chaque tâche de lapplication est réalisée par un objet spécialisé dans sa réalisation - Classes et Objets : ne pas confondre ces deux notions var _sonCanard:Sound = new Sound(); var _sonTir:Sound = new Sound(); Ici, « Sound » désigne la Classe, « _sonCanard » et « _sonTir » désignent deux Objets de type « Sound ». - Notion dhéritage Une classe peut hériter/dériver dune autre classe.

Jeu de Tir aux Canards2. Créer un document fla, paramétrage du document : Dimensions : 800 x 600 pixels Arrière-plan : noir 30 images par seconde Créer deux calques : lun pour le code, lautre pour linterface. Chaque calque doit contenir 3 images clefs vides : Sur lun des calques, les nommer « Menu », « Jeu » et « Fin » Dans la bibliothèque, créer trois répertoires avec les mêmes noms que les images.

Création du menu2.1. txtPseudo rdFacile rdNormal rdCauchemar btnPlay Sur le calque Interface, Image 1 :

Code à placer dans le calque Code de limage 1 : stop(); // Initialiser le contenu du champs de saisi contenant le pseudo txtPseudo.text = ""; // Changer la couleur de fond du champ de texte txtPseudo.backgroundColor = "0xC9C072"; txtPseudo.background = true;// Activer la couleur de fond rdFacile.fontName = "Garamond"; rdFacile.fontSize = 22; rdNormal.fontName = "Garamond"; rdNormal.fontSize = 22; rdCauchemar.fontName = "Garamond"; rdCauchemar.fontSize = 22; Création du menu2.1.

Suite du code à placer dans le calque Code de limage 1 : btnPlay.onRelease = function() // quand on relâche le bouton { if(txtPseudo.text != "") // Si le pseudo a été saisi { // on mémorise la difficulté qui va servir dans l'image suivante if(rdFacile.selected) _global.difficulte = "facile"; else if(rdNormal.selected) _global.difficulte = "normal"; else if(rdCauchemar.selected) _global.difficulte = "cauchemar"; // on mémorise le pseudo _global.pseudo = txtPseudo.text; // Aller à l'image 2 et s'arrêter là gotoAndStop("Jeu"); } } Création du menu2.1.

Création de la partie jeu2.2. Sur le calque Interface, Image 2 : importer le fond (fond_shoot.png)

Création du clip « fusil » : - Insérer limage « canon » en -52 ; Placer une occurrence nommée « fusil » du clip créé sur le calque Interface de limage 2 - La placer en : 350 ; 430 Création du clip « souris » : - Exporte le clip pour ActionScript car il sera uniquement utilisé par lintermédiaire dActionScript - Insérer limage « cible » en -35 ; -35 Création des clips2.2.1.

Création du clip « canard » : - Exporter pour ActionScript - Insérer limage « duck1 » Lorsque Flash vous propose dimporter toute la séquence, répondez oui, il importera les images « duck2 » et « duck3 » dans les images 2 et 3 - Placer les trois images en : -110 ; -100 Ce placement définit le centre de rotation de limage pour plus tard. - Déplacer limage 3 en image 10 et limage 2 en image 5 - Insérer une image clef non vide en image 9 - Placer le code suivant dans limage 9 : gotoAndPlay(1); Création des clips2.2.1.

Code à placer dans un nouveau fichier nommé « souris.as » : // Classe qui sera liée au clip souris class souris extends MovieClip { // Quand ce clip sera chargé sur la scène function onLoad() { // Méthode permettant d'automatiquement suivre la souris this.startDrag(true); // On cache l'image de la souris (la flèche blanche) Mouse.hide(); } // Quand ce clip sera détruit function onUnload() { this.stopDrag(); // On arrête de suivre la souris Mouse.show(); // On réaffiche la souris } } Création de la classe souris2.2.2.

Code à placer dans un nouveau fichier nommé « daffy.as » : // Classe daffy dérivant de la classe MovieClip class daffy extends MovieClip { // Constructeur function daffy() { // Code qui sera remplacé plus tard _x = _y = 150; } // Fonction appelée à chaque rafraichissement d'image function onEnterFrame() { } /* Action quand on clique sur le canard */ function onPress() { // Change l'image du canard this.gotoAndStop(10); } } Création de la classe daffy – Partie

Code à placer dans un nouveau fichier nommé « jeu.as » : // Importation des classes daffy et souris utilisées import daffy; import souris; class jeu { // Profondeur courante pour la création de clip sur la scène private var _profondeurCourante:Number = 1; // Interval de temps entre l'apparition des canards private var _tempsCanard:Number = 700; // Tableau qui va contenir les références aux callbacks : // [0] interval entre l'apparition de chaque canard // [1] timer pour le chrono du jeu private var _interval:Array = new Array( 2 ); // Référence le clip de la souris private var _souris:souris = null; Création de la classe jeu – Partie

// Constructeur de la classe : function jeu() { // Cré les derniers éléments d'interface setInterface(); // Définition des timers _interval[0] = setInterval(this, "nouveau_canard", _tempsCanard); } private function setInterface() { // Création d'une instance du clip souris // Le clip est créé à la profondeur car : // - On veut être sûr quil soit au-dessus des canards // est le dernier index pouvant être supprimé mais // il est réservée par les composants AS2 // Voir l'aide de removeMovieClip _root.attachMovie("souris", "souris", ); // On garde la référence de la souris pour la détruire à la fin _souris = _root.souris; } Création de la classe jeu – Partie

// Fonction permettant de créer un nouveau canard sur // la scène private function nouveau_canard() { _root.attachMovie("canard","mon_canard" + _profondeurCourante, _profondeurCourante); _profondeurCourante++; // Le temps du test, on détruit le timer pour ne // créer quun seul canard… clearInterval(_interval[0]); } } Création de la classe jeu – Partie

Premier test du travail réalisé Insérer le code suivant dans le calque Code de limage 2 : // Importer le fichier jeu.as import jeu; /* Liaison de notre classe souris avec l'objet souris de la bibliothèque */ Object.registerClass("souris",souris); /* Liaison de notre classe daffy avec l'objet canard de la bibliothèque */ Object.registerClass("canard",daffy); /* On instancie un objet jeu */ var monJeu:jeu = new jeu(); En testant, vous devriez avoir un canard qui bat des ailes, la cible qui suit votre souris sans que le curseur soit visible. Si vous cliquez sur le canard, celui-ci sera tué.

Nous allons maintenant animer le canard. // Classe daffy dérivant de la classe MovieClip class daffy extends MovieClip { // Déclaration et initialisation des variables // Indique si le canard est mort ou non private var mort:Boolean = false; // Indique si le canard est tombé par terre private var crash:Boolean = false; private var vitesse:Number = 0; // Vitesse du canard // Dans quel sens va le canard : // (1 de gauche à droite, et -1 de droite à gauche) private var sens:Number = 1; // Déclaration et initialisation de la variable statique total // Permet de compter combien de canard sont utilisés private static var total:Number = 0; public static function get Total() { return total; } public static function set Total(newTotal:Number) { total = newTotal;} Création de la classe daffy – Partie

// Constructeur function daffy() { // La vitesse est pseudo-aléatoire : entre 3 et 8 vitesse = Math.random() * 5 + 3; // sens également pseudo-aléatoire (ici sens = 0 ou 1) sens = Math.round(Math.random()); if(sens == 0) sens = -1; // sens = -1 ou 1 uniquement // Donne une grosseur pseudo-aléatoire aux canards _xscale = _yscale = Math.random() * ; // le canard est dirigé vers le sens ou il va _xscale = _xscale * -sens; // donne une position pseudo-aléatoire aux canards _y = Math.random() * ; if(sens == 1) // sil va de gauche à droite, il arrive par la gauche _x = -_width; else // sinon par la droite _x = 800; // Un canard de plus vient d'être créé total++; } Création de la classe daffy – Partie

// Fonction appelée à chaque rafraichissement d'image function onEnterFrame() { if(not crash)// Si le canard n'est pas au sol { // Déplace le canard horizontalement _x += vitesse * sens; // Si le canard est sortit de l'écran : if(((_x - _width > 800) or (_x + _width 450) crash = true; } } Création de la classe daffy – Partie

else// Le canard est par terre { _alpha--; // On réduit sa transparence if(_alpha < 0)// S'il n'est plus visible { // On le retire du total des canard affichés total--; // On le retire de la scène this.removeMovieClip(); } } } /* Action quand on clique sur le canard */ function onPress() { // Si le canard n'est pas déjà mort if(!mort) { mort = true; // Change l'état du canard this.gotoAndStop(10); // Change l'image du canard } } }// Fin de la classe daffy Création de la classe daffy – Partie

Création de la classe jeu – Partie Ajoutez le code suivant à la classe jeu : 1 – Dans la partie de déclaration des variables : // Nombre de canard maximal en même temps durant le jeu private var _nbCanardMax:Number = 10; 2 – A la place de la fonction nouveau_canard : // Fonction permettant de créer un nouveau canard sur la scène private function nouveau_canard() { if(daffy.Total < _nbCanardMax) { _root.attachMovie("canard", "mon_canard" + _profondeurCourante, _profondeurCourante); _profondeurCourante++; } } 3 – Tester le résultat

Création de la classe jeu – Partie Nous allons maintenant animer le canon et mettre un peu dambiance. Commencez par ajouter le code suivant à la classe jeu : 1 – Dans la partie de déclaration des variables : // Son joué lors de l'apparition d'un canard private var _sonCanard:Sound = null; // Musique jouée pendant une partie private var _sonMusique:Sound = null; // Son joué lors d'un tir private var _sonTir:Sound = null; 2 – Dans le constructeur de la classe : // Charge les sons setSounds(); // Indique aux objets Key et Mouse (gérés par Flash) que // cette classe est à l'écoute des évènements provenants // respectivements du clavier et de la souris Key.addListener(this); Mouse.addListener(this);

Création de la classe jeu – Partie – Les procédures suivantes : // Chargements des trois sons du jeu private function setSounds() { _sonCanard = new Sound(); _sonCanard.loadSound("sons/duck.mp3"); _sonCanard.setVolume(80); _sonMusique = new Sound(); _sonMusique.onLoad = function() { // Dès que zikette est chargée, on commence // à le jouer this.start(); }; _sonMusique.loadSound("sons/zikette.mp3"); _sonMusique.setVolume(80); _sonTir = new Sound(); _sonTir.loadSound("sons/gunfire.mp3"); _sonTir.setVolume(100); }

Création de la classe jeu – Partie // Fonction qui sera déclenchée par l'objet Key lorsque l'utilisateur // appuie sur une touche. Elle ne sera bien sûr déclenchée que si la // commande Key.addListener(this) a déjà été exécutée... private function onKeyDown() { // On teste si la flèche gauche est enfoncée if(Key.isDown(Key.LEFT)) _root.fusil._x = _root.fusil._x - 4; else if(Key.isDown(Key.RIGHT)) _root.fusil._x = _root.fusil._x + 4; } // Fonction qui sera déclenchée par l'objet Mouse lorsque l'utilisateur // bouge la souris. Elle ne sera bien sûr déclenchée que si la commande // Mouse.addListener(this) a déjà été exécutée... private function onMouseMove() { // calcul d'angle (trigo de 5eme ;) var x = _root.souris._x - _root.fusil._x; var y = _root.souris._y - _root.fusil._y; var angle = -Math.atan(x / y) * 180 / Math.PI; if(angle 40) angle = 40; _root.fusil._rotation = angle; // définit l'orientation }

Création de la classe jeu – Partie // Fonction qui sera déclenchée par l'objet Mouse lorsque // l'utilisateur appuie sur un bouton de la souris. Elle ne sera // bien sûr déclenchée que si la commande Mouse.addListener(this) // a déjà été exécutée... private function onMouseDown() { _sonTir.start(); // on joue le le son pour le tir du fusil } 4 – Dans la fonction nouveau_canard, complétez lancienne ligne commençant par « _root » : _root.attachMovie("canard", "mon_canard" + _profondeurCourante, profondeurCourante, {son:_sonCanard}); 5 – Dans la classe daffy : ligne 1 dans les variables, ligne 2 dans le constructeur // Son à utiliser lors de l'initialisation du canard private var son:Sound = null; // Si le son a été créé à l'initialisation, on le joue if(son != null) son.start(); Testez votre jeu de tir au canard

Niveaux de jeu et Score Ajoutez le canard mort (duck3), le chrono et les cartouches

Niveaux de jeu et Score Ajoutez les codes suivants dans la classe jeu : 1 – Dans la zone de déclaration des variables private var _temps:Number = 60; // Chrono du jeu private var _munitions:Number = 60; // Munitions restantes private var _canardTues:Number = 0; // Nombre de canards tués // Référence un champ de texte qui va afficher le nombre de canard tués private var _txtCanardTues:TextField = null; // Référence au champ de texte qui va afficher le temps de jeu restant private var _txtChrono:TextField = null; // Référence au champ de texte qui affichera le nombre de munitions restantes private var _txtMunitions:TextField = null; 2 – Au niveau du constructeur : function jeu(maxDuck:Number, time:Number, ammo:Number, tpsCanard:Number) { _nbCanardMax = maxDuck; _temps = time; _tempsCanard = tpsCanard; _munitions = ammo; _interval[1] = setInterval(this, "timer", 1000); … }

Niveaux de jeu et Score – Dans la fonction setInterface() : /* Création des 3 textFields pour les indicateurs, format des champs de texte */ var formatTxt:TextFormat = new TextFormat(); formatTxt.bold = true; formatTxt.size = 32; /* Afficheur pour le nombre de canards tués */ _root.createTextField("CanardTues_txt", _profondeurCourante, 70, 507, 102, 63); _txtCanardTues = _root.CanardTues_txt; _txtCanardTues.setNewTextFormat(formatTxt); _txtCanardTues.text = "0"; _profondeurCourante++; /* Afficheur pour le chrono */ _root.createTextField("Chrono_txt", _profondeurCourante, 200, 507, 102, 63); _txtChrono = _root.Chrono_txt; _txtChrono.setNewTextFormat(formatTxt); _txtChrono.text = _temps.toString(); _profondeurCourante++;

Niveaux de jeu et Score /* Afficheur pour les munitions */ _root.createTextField("Munitions_txt", _profondeurCourante, 660, 507, 102, 63); _txtMunitions = _root.Munitions_txt; _txtMunitions.setNewTextFormat(formatTxt); _txtMunitions.text = _munitions.toString(); _profondeurCourante++; 4 – Dans la fonction nouveau_canard, complétez lancienne ligne commençant par « _root » : _root.attachMovie("canard","mon_canard" + _profondeurCourante, _profondeurCourante, {son:_sonCanard,_jeu:this}); 5 – Modifiez la procédure onMouseDown : private function onMouseDown() { _sonTir.start(); // on joue le le son pour le tir du fusil munitions = munitions - 1; _global.score--; if (_munitions == 0) fin(); }

Niveaux de jeu et Score – Ajoutez les fonctions suivantes : // Propriété publique qui retourne ou modifie le nombre de munitions restantes public function get munitions():Number { return _munitions; } public function set munitions(n:Number) { _munitions = n; _txtMunitions.text = n.toString(); } // Propriété publique qui retourne ou modifie le temps restants public function get temps() { return _temps; } public function set temps(n:Number) { _temps = n; _txtChrono.text = n.toString(); }

Niveaux de jeu et Score // Propriété publique qui retourne ou modifie le nombre de canards tués public function get canardTues():Number { return _canardTues; } public function set canardTues(n:Number) { _canardTues = n; _txtCanardTues.text = n.toString(); } // Fonction appelée chaque seconde par l'un des timers définient dans la // variable _interval. Elle permet de compter le temps écoulé private function timer() { temps = temps - 1; _global.score = _global.score - 0.1; if(_temps == 0) fin(); }

Niveaux de jeu et Score // Fonction appelée à la fin du jeu pour supprimer tous les éléments // qui doivent l'être : // - éléments d'interface créés dynamiquement (sinon ils resteront // sur les images suivantes) // - timers, Listeners… private function fin() { // On détruit les intervales, puis linterface. if(_interval[0] != null) clearInterval(_interval[0]); if(_interval[1] != null) clearInterval(_interval[1]); _souris.removeMovieClip(); _txtCanardTues.removeTextField(); _txtChrono.removeTextField(); _txtMunitions.removeTextField(); // On retire les écouteurs sur le clavier et la souris Key.removeListener(this); Mouse.removeListener(this); _sonMusique.stop(); // On arrête la musique // On redirige vers l'image 3 _root.gotoAndStop("Fin"); }

Niveaux de jeu et Score – Gestion du jeu dans la classe daffy : - Dans les déclarations de variables // Référence à la partie dans laquelle le canard est utilisé private var _jeu:jeu = null; - Au début de onEnterFrame (ne pas oublier de rajouter un else avant le if qui suit) if(_jeu.temps == 0 || _jeu.munitions == 0) { // jeu terminé on retire toutes les instances de la scène. this.removeMovieClip(); total--; } - Dans le if de onPress : _jeu.canardTues = _jeu.canardTues + 1; // Un canard de plus de tué _global.score = _global.score + 4

Niveaux de jeu et Score – Modification de la création de lobjet monJeu dans le code de limage 2 : A la place de : /* On instancie un objet jeu */ var monJeu:jeu = new jeu(); Mettre : _global.score=0; /* On instancie le jeu et on lance la partie */ var monJeu:jeu = null; if(_global.difficulte == "facile") monJeu = new jeu(10, 60, 80, 700); else if(_global.difficulte == "normal") monJeu = new jeu(20, 60, 70, 500); else if(_global.difficulte == "cauchemar") monJeu = new jeu(40, 60, 60, 300);

Création de la partie daffichage du score2.3. Sur le calque Interface, Image 3 : txt_msg : variable msg txt_score : variable scorefinal btnMenu btnTryAgain

Dans le calque Code, ajouter le code suivant : scorefinal = _global.score; msg = "Bravo " + _global.pseudo + " !"; btnMenu.onRelease = function() { gotoAndStop("Menu"); } btnTryAgain.onRelease = function() { gotoAndStop("Jeu"); } Création de la partie daffichage du score2.3.