Coder un jeu de Pac Man avec Scratch - Défi 3


Troisième semaine, troisième défi. Vous disposez désormais de presque tous les éléments graphiques de votre jeu :
·        Le joueur Pac Man
·         Les Fantômes
·         Les tableaux
Il manque les "billes" à manger.




Vous pouvez retrouver tous ces éléments dans le projet Pac Man –défiScratch3 disponible sur mon compte Scratch.


Cette semaine nous allons nous intéresser plus particulièrement à l’affichage des différents arrière-plans en fonction des phases du jeu. Et à l’initialisation du joueur, Pac Man.


1.   Les arrière-plans

Ce projet dispose de quatre arrière-plans. Ils s’affichent en fonction des phases de jeu grâce au bloc basculer sur l’arrière-plan () et à l’envoi/ réception de messages.






Les messages sont utilisés pour déclencher des actions qui peuvent être communes à des sprites et des arrière-plans. Lorsqu'un message est envoyé seuls les sprites et arrière-plans disposant du bloc de réception seront impactés.



1.    L’arrière-plan présentation : s’affiche au lancement du programme. Il présente les règles du jeu.




2.    L’arrière-plan jeu : correspond au labyrinthe dans lequel doit évoluer le joueur. Lorsqu’il s’affiche un message est envoyé pour signifier aux éléments du jeu qu’ils peuvent entrer en scène.



3.    L’arrière-plan perdu : il s’affiche lorsque le joueur ne dispose plus de vies.  


1.   
4.  L’arrière-plan gagné : il s’affiche lorsque le joueur a mangé toutes les billes (nous ne les avons pas encore créées) et a atteint la sortie du labyrinthe sans perdre toutes ses vies.






Pour élaborer le programme dédié aux arrière-plans, veillez à bien avoir sélectionné la scène, puis ouvrez l’onglet Code.







Pour définir le nom du message :

1.Dans le menu déroulant du bloc envoyer à tous () ou du bloc quand je reçois () sélectionnez Nouveau message.
2.    Une fenêtre vous permettant de renseigner le nom du message s’ouvre.
3.    Validez en cliquant sur Ok.
Donnez toujours des noms explicites aux messages que vous utilisez !








quand drapeau vert est cliqué // cette action lance l’exécution du programme.

basculer sur l’arrière-plan présentation // l’arrière-plan présentant les règles du jeu s’affiche.

attendre 5 secondes // il s’affiche pendant 5 secondes.

envoyer à tous jeu // ce message est envoyé pour lancer la partie. Il est réceptionné par Pac Man et les Fantômes qui deviennent alors visibles sur la scène.

basculer sur l’arrière-plan jeu // l’arrière-plan est modifié. Le labyrinthe s’affiche.




Complétez le programme des arrière-plans avec deux programmes :

1. Quand le message perdu est reçu, l’arrière-plan bascule sur l’arrière-plan perdu.
     2. Quand le message gagné est reçu, l’arrière-plan bascule sur l’arrière-plan gagné.



2.   Pac Man

Lors du #defiScratch2 nous avions commencé à élaborer le programme de Pac Man. Nous allons le compléter en initialisant différents paramètres.

L’initialisation est une opération préliminaire au démarrage d’un programme. Elle consiste à fixer certains paramètres (positions, nombre de vies, apparence etc.) de manière à ce que les sprites disposent des mêmes caractéristiques à chaque redémarrage. 




Le programme commence par une initialisation :
  • Le sprite est invisible lorsque le programme commence car il commence par le tableau de présentation.
  • La taille du sprite est adaptée de manière à ce qu’il puisse passer entre les murs.
  • La position du sprite au démarrage du jeu et son orientation.
  • Le nombre de vies dont dispose le joueur.

Les vies sont gérées par une variable. Une variable sert à stocker des informations modifiables au fur et à mesure de l’exécution du programme.




 Pour créer une variable :
1.    Dans la catégorie Variables sélectionnez Créer une variable.

2.    Dans la fenêtre qui s’ouvre renseignez le nom de la variable et validez sur Ok. Nommez vos variables avec des noms explicites.









cacher // au démarrage du programme c’est-à-dire lorsque l’arrière-plan présentation s’affiche, ce sprite n’est pas visible sur la scène.

mettre la taille à 50% de la taille initiale // la valeur dépend de votre sprite et de votre labyrinthe.

s’orienter en direction de 90 // j’ai choisi de le faire regarder vers la droite par rapport à l’emplacement que j’ai choisi comme entrée de labyrinthe.

aller à x : -198 y : -140 // ces coordonnées sont propre à mon jeu. Il s’agit des coordonnés de l’entrée de mon labyrinthe.





Pour connaitre les coordonnées vous pouvez simplement positionner le sprite de Pac Man à l’endroit désiré sur la scène. Les coordonnées correspondantes seront directement reportées dans le bloc situé dans la liste.
mettre vies à 3 // le joueur dispose de 3 vies. Le nombre de vies dont dispose le joueur (Pac Man) est stocké dans une variable. Ce nombre pourra évoluer au fur et à mesure du jeu. I servira notamment à déterminer si le jouer a perdu.








Dans le programme des arrière-plans, nous avons vu que l’arrière-plan perdu s’affiche lorsque le message perdu est reçu. Ce message est envoyé par le sprite Pac Man lorsque ses vies sont égales à 0.


Dans la boucle de répétition, insérez une condition qui permettra au programme de tester en permanence la valeur de la variable vies. Lorsque celle-ci sera égale à 0 le message perdu sera envoyé. Et le sprite disparaîtra de la scène.










Pour vous aider :

Vous pouvez télécharger le résultat du deuxième défi sur mon compte Scratch.

Compte Scratch : LacazeSarah

Nom du fichier : Pac Man – défiScratch3


Version PDF téléchargeable de #defiScratch3.

Commentaires

Posts les plus consultés de ce blog

Scratch - Dessiner dans un repère orthonormé

Apprendre à programmer avec Arduino - le chenillard

Fabriquer une main articulée