|
Que va-t-on
faire ? Grace aux cours
précédents, je vais vous montrer ici comment faire
un petit jeu. Il va s'agir tout simplement du jeu
"devine" qui est dans la partie Autre jeux.
Vous pouvez voir le rendu en
cliquant ici : Devine.
L'écran
d'introduction : On va tout d'abord
commencer par faire l'écran d'introduction. Ecrivez
le titre du jeu ("Devine") en haut de
l'écran et centrez le a l'aide de la commande Aligner
(Modification-->Alignez-->Centres verticalement).
Ensuite, un peu plus bas, faites un texte statique
qui nous permettra d'expliquer les règles du jeu.
Vous pouvez mettre dedans : "But de ce jeu
: Vous devez simplement essayer de deviner le nombre
que l'ordinateur a choisi de matière aléatoire entre
0 et 500. Si vous mettez un nombre trop grand, l'ordinateur
vous dira : "Plus bas". Si au contraire,
vous mettez un nombre trop petit, l'ordinateur vous
dira : "Plus haut". A la fin de la partie,
on vous dira combien de coups vous avez mis pour
devinez le bon nombre !". Ensuite, un peu
plus bas, vous aller mettre un clip Jouer. Pour
cela, créer un symbole Clip avec dedans un rectangle
et un texte Jouer. Revenez ensuite sur la scène
principale et cliquez une fois sur le clip "Jouer".
Appuyer une fois sur F9 pour faire apparaitre la
fenetre action et placez ce code :
|
on (press) {
_root.gotoAndStop(2); }
|
Cela
veut dire que lorsque l'utilisateur va cliquer sur
ce clip (on (press)), il va aller a la deuxieme
image de la scene (_root.gotoAndStop(2);). Vous
allez maintenant placer du code sur l'image 1. Pour
cela, cliquez sur la premiere image et faites F9.
Dans le rectangle de code, tapez "stop();".
Cela va permettre à l'animation de s'arrêter à la
première image.
Le
jeu : Voyons maintenant
la partie jeu, un peu plus complexe. Petit rappel
: pour ouvrir la fenetre action,
faites F9. Pour créer un clip,
sélectionnez l'image que vous
souhaitez convertir en clip
et faites F8. Tout d'abord, pour rappeler
au joueur le nom du jeu auquel
il joue, on va replacer le titre du jeu ("Devine")
en haut de la deuxieme image de la scène.

Ensuite,
vers le milieu de la scène, crée un texte statique
ou vous mettrez "Votre nombre :" puis
à côté un texte de saisie assez grand, mais pas
trop (c'est pour rentrer le nombre à deviner) Appelez
sa variable nombre1. Après cela, un peu plus
bas, vous allez mettre un texte dynamique. Faites
le assez grand et appelez son variable resultat.

Encore plus bas, créer encore un clip avec un rectangle
et le texte "Validez". C'est ce clip qui va servir
a valider et à faire le "moteur" du jeu.
Cliquer sur ce clip nouvellement crée et faites
apparaitre la barre d'action (F9). Mettez tout d'abord
dedans :
|
onClipEvent(load) { nombre
= Math.random(500)+1; coup = 0; }
|
Cela
veut dire que lorsque l'animation va se charger
(onClipEvent(load)), l'ordinateur va choisir un
nombre aléatoire entre 0+1 et 499+1, soit 1 et 500
et le mettre dans la variable nombre (nombre
= Math.random(500)+1;). Il va aussi mettre 0 dans
la variable coup. La variable coup va servir a indiquer
le nombre d'essais que le joueur a fait avant de
parvenir a trouver le bon nombre. Un peu plus
bas, mettez maintenant ce code :
|
on (press) {
coup++; if (_root.nombre1<nombre)
{ _root.resultat = "Plus
grand !"; } if
(_root.nombre1>nombre) { _root.resultat
= "Plus petit !"; }
if (_root.nombre1 == nombre) { _root.coup
= coup; _root.gotoAndStop(3);
} _root.nombre1 = "";
}
|
Non, ne vous inquietez pas, rien
de bien compliqué dans ce code ! Cela veut juste
dire que lorsque l'utilisateur va appuyer sur "Valider",
il va se passer une série d'action : L'ordinateur
va d'abord commencer par ajouter un au nombre de
coup joué (coup++;). Ensuite, il va comparer
le score mis dans la case sur la scène (_root.nombre1)
avec le nombre choisi par l'ordinateur (nombre)
: Si ce dernier est plus grand que celui choisi
par le joueur (if (_root.nombre1<nombre) {),
alors on va afficher dans le texte résultat sur
la scène "Plus grand" (_root.resultat
= "Plus grand !";). Si l'inverse se
produit, on fait l'inverse ( if (_root.nombre1>nombre)
{ _root.resultat = "Plus
petit !"; }). Par contre, si le
nombre choisi par le joueur est le meme que l'utilisateur
( if (_root.nombre1 == nombre) {) alors on
va mettre la variable coup en variable globale pour
pouvoir y acceder depuis n'importe où (_root.coup
= coup;) et on va aussi aller sur l'image 3
de la scène pour voir en combien de coup l'utilisateur
a gagné (_root.gotoAndStop(3);). Pour finir,
on va remettre la variable nombre1 sur la scene
a rien du tout (_root.nombre1 = "";).
Fin
de la partie : Voyons maintenant
la derniere partie, toute simple : Ecrivez d'abord
"Devine" en haut, comme pour les autres
partie. Ensuite, placez vous sun peu plus bas et
faites un texte dynamique ayant pour nom de variable
"final". Faites le assez grand. Un peu
plus bas, faites un clip avec comme texte dedans
"Rejouer". Ajoutez ce code dedans
:
|
on(press) { _root.gotoAndStop(2); }
|
Vous
l'aurez surement compris, cela veut dire que lorsque
l'utilisateur va appuyer sur ce bouton, on va aller
a l'image 2 de la scéne pour refaire une partie. Ensuite,
placer-vous sur l'image 3 de la scene et ajoutez
du code dedans (Comme on a fait pour la premiere
image : On a ajouté stop();). Sur l'image 3, ajoutez
donc ce code : _root.final = "Bravo, vous
avez réussi a deviner le bon nombre en "+_root.coup+"
coups ! Voulez-vous rejouer ?"; Cela veut
dire que on va placer sur le texte dynamique "final"
de la scène une phrase avec en plus, incrémenté,
la variable _root.coup.

Voila, votre animation
est maintenant fini. Pour la tester, faites Ctrl+Entrée
!
Télécharger
l'exemple au format.fla - Voir
le SWF
Revenir
a l'index des cours
|