Aller au menu - Aller au contenu

[Plan du site] Vous êtes ici --- > Le Site du Zéro > Les tutoriels > Non-Officiels > Programmation > ActionScript / Flash / Flex > Comment créer votre premier mini-jeu ? > Lecture du tutoriel

Comment créer votre premier mini-jeu ?

Vous vous apprêtez à lire un tutoriel rédigé par un membre de ce site. Malgré tout le soin que ce membre a pu apporter au tutoriel, nous ne pouvons pas garantir que les informations contenues sur cette page sont exactes à 100%. Merci de garder cela en tête lorsque vous lirez cette page ;o)
Avatar
Auteur : Kados
Note : 15 / 20 (4 votes)
Visualisations : 37 201

Plus d'informations Plus d'informations
Je vais vous montrer ici comment faire un petit jeu. Il va s'agir tout simplement d'un jeu de type "devine". Vous pouvez voir le rendu en cliquant ici : Devine.

Attention, avant de commencer ce cours, vous devez connaître les bases de Flash. Si vous ne les maîtrisez pas, je vous invite à lire les autres tutos du Site du Zér0, ou à aller là : Cours de flash.
Sommaire du tutoriel :
Icône du chapitre

L'écran d'introduction

On va tout d'abord commencer par faire l'écran d'introduction, c'est-à-dire celui qui présente les règles au joueur.


Écrivez le titre du jeu ("Devine") en haut de l'écran, et centrez-le à 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 y mettre :
Citation : Kados
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 deviner le bon nombre !

Ensuite, un peu plus bas, vous allez mettre un clip Jouer.
Pour cela, créez un symbole Clip, insérez-y un rectangle et un texte "Jouer". Revenez ensuite sur la scène principale, et cliquez une fois sur le clip Jouer. Appuyez une fois sur F9 pour faire apparaître la fenêtre action, et placez ce code :
Code : Autre
1
2
3
on (press) {
  _root.gotoAndStop(2);
}

Cela veut dire que lorsque l'utilisateur va cliquer sur ce clip (on (press)), il va aller à la deuxième image de la scène (_root.gotoAndStop(2);).


Vous allez maintenant placer du code sur l'image 1. Pour cela, cliquez sur la première image et faites F9. Dans le rectangle de code, tapez :
Code : Autre
1
stop();

Cela va permettre à l'animation de s'arrêter (stop()) à la première image.


Voilà. L'écran d'introduction est maintenant créé. Il ne reste donc plus qu'à faire le jeu en lui-même, le plus dur. ^^

L'écran du jeu

Voyons maintenant la partie jeu, un peu plus complexe.

Petit rappel : pour ouvrir la fenêtre 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 deuxième image de la scène.

Image utilisateur


Ensuite, vers le milieu de la scène, créez un texte statique où vous mettrez "Votre nombre :" ; puis, à côté, un texte de saisie assez grand, mais pas trop (c'est pour rentrer le nombre à deviner). Appelez ça : "variable nombre1". Après cela, un peu plus bas, vous allez mettre un texte dynamique. Faites-le assez grand et donnez-lui comme nom de variable "résultat" (ce texte servira à donner un indice au joueur : "Plus grand", par exemple).

Image utilisateur


Encore plus bas, créez encore un clip avec un rectangle et le texte "Validez". C'est ce clip qui va servir à valider et à faire le "moteur" du jeu. Cliquez sur ce clip nouvellement créé, et faites apparaître la barre d'action (F9) ; mettez-y ce code :
Code : Autre
1
2
3
4
5
onClipEvent(load) {
  nombre = Math.random(500)+1;
  nombre = Math.round(nombre);
  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 (donc 1 et 500), et le mettre dans la variable nombre (nombre = Math.random(500)+1;). Cependant, cette variable ne sera pas un entier : on va donc l'arrondir à l'aide de la fonction Math.round(). Il va aussi mettre 0 dans la variable coup.

Mais à quoi sert la variable coup ?

Comme vous l'aviez sûrement deviné ;) , la variable coup va servir à indiquer le nombre d'essais que le joueur a fait avant de parvenir à trouver le bon nombre.


Un peu plus bas, mettez maintenant ce code :

Code : Autre
1
2
3
4
5
6
7
8
9
10
11
12
13
14
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 inquiétez 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'actions.
L'ordinateur va d'abord commencer par ajouter un (1) 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 même que l'utilisateur ( if (_root.nombre1 == nombre) {), alors on va mettre la variable coup en variable globale pour pouvoir y accéder depuis n'importe où (_root.coup = coup;) ; on va aussi aller sur l'image 3 de la scène pour dire au joueur en combien de coups l'utilisateur a gagné, et lui dire que le jeu est fini.(_root.gotoAndStop(3);).
Pour finir, on va remettre la variable nombre1 sur la scène à rien du tout (_root.nombre1 = "";).


Voilà, la partie jeu est désormais terminée. Il ne nous reste plus qu'à faire la dernière partie, celle qui va afficher au joueur en combien de coups il a deviné le nombre.

L'écran fin de la partie

Voyons maintenant la dernière partie, toute simple.

Écrivez d'abord "Devine" en haut, comme pour les autres parties.

Ensuite, placez-vous un 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 "Rejouer". Ajoutez-y ce code :
Code : Autre
1
2
3
on(press) {
  _root.gotoAndStop(2);
}

Vous l'aurez sûrement compris, cela veut dire que lorsque l'utilisateur va appuyer sur ce bouton, on va aller à l'image 2 de la scène pour refaire une partie.

Ensuite, placez-vous sur l'image 3 de la scène et ajoutez-y du code (comme on a fait pour la première image : on a ajouté stop();). Sur l'image 3, ajoutez donc ce code :
Code : Autre
1
_root.final = "Bravo, vous avez réussi à deviner le bon nombre en "+_root.coup+" coups ! Voulez-vous rejouer ?";

Cela veut dire que l'on va placer sur le texte dynamique "final" de la scène une phrase avec en plus la variable _root.coup incrémentée (cela veut dire qu'on lui ajoute un).


Image utilisateur


Voilà, votre animation est maintenant finie. Pour la tester, faites Ctrl + Entrée !

Mon animation ne marche pas ! Qu'est-ce qui ne va pas ?

Pour le savoir, je pense qu'il n'y a que deux solutions. La première, c'est aller demander sur le forum Programmation du Site du Zér0 de l'aide. La deuxième, c'est comparé votre code à celui-ci : Fichier .fla.
Si malgré ceci, vous n'y arrivez pas, je vous conseille de bien relire le tuto et de le refaire entièrement, c'est-à-dire de repartir de zéro, pour que votre ancien code ne vous induise pas en erreur...

En conclusion, vous venez de créer votre premier mini-jeu. Certes, il est assez simpliste mais vous venez d'apprendre les bases pour en créer de plus grands.

Si vous souhaitez avoir d'autres cours du même auteur, je vous invite à aller ici : Flashy, ou à regarder les autres tutos créés par les membres du Site du Zér0.
Retour en haut Retour en haut


Créé : le 10/12/2005 à 17:07:59
Modifié : le 22/08/2008 à 16:09:18
Avancement : 100%
Licence : Copie non autorisée

Changer de design | En savoir plus | Plan du site | Politique d'accessibilité | Règles | RSS tutoriels | RSS news
Édité par Simple IT SARL : Nous contacter | Notre blog | Revue de presse | Publicité

Y'a plus rien à lire, faut remonter maintenant !

Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.

Nombre de connectés 34 Zéros connectés | Requêtes SQL 8 requêtes | Temps de génération de la page : Total (SQL) 0.0302s (0.0147s)