Jeu de tir
Introduction
Les jeux de tir sont parmi les jeux les plus répandus. Ils simulent des combats qui peuvent être plus ou moins violents et réalistes. Rien de tel avec le jeu proposé ici, qui s’inspire des premiers jeux de combats spatiaux.
Objectif : ce jeu consiste à tirer sur des vaisseaux spatiaux ennemis. Si le vaisseau du joueur est touché, il perd des vies, et s’il touche des vaisseaux ennemis, il marque des points. La partie se termine si le joueur n’a plus de vies, ou si le temps imparti est terminé.
Compétences développées :
-
Insérer un compte à rebours avant le démarrage d’un jeu.
-
Créer un jeu avec un temps limité en utilisant un chronomètre.
-
Faire défiler horizontalement des "cibles" sur la scène.
-
Gérer des vies et gérer des scores.
-
Créer une ambiance sonore dans un jeu.
Dans le chapitre L’extension micro:bit, un autre jeu de tir est développé. Il aborde d’autres techniques qui peuvent être complémentaires.
Le graphisme
Ce projet disponible en téléchargement depuis l’onglet Compléments a pour nom Space war.sb3.
1. Les arrière-plans
Ce projet nécessite la création de trois arrière-plans ayant pour noms : Jeu - Gagné - Game Over. Les trois arrière-plans utilisent l’image Stars issue de la bibliothèque. Sur les arrière-plans Gagné et Game Over des informations ont été inscrites.
Dans la fenêtre des arrière-plans, sélectionnez Choisir un arrière-plan (1). Et choisissez Stars (2) dans la bibliothèque qui s’est ouverte.
Cliquez...
Le programme des arrière-plans
Ce jeu nécessite la création et l’utilisation de deux variables.
-
La variable Score joueur : pour stocker le nombre de vaisseaux touchés par le joueur.
-
La variable Vies joueur : pour gérer le nombre de vies dont dispose le joueur. Lorsqu’il est touché par un tir ennemi, il perd une vie.
Le programme des arrière-plans est constitué de quatre piles de blocs. Elles servent à :
-
Initialiser les variables utilisées dans le jeu.
-
Jouer en permanence une boucle sonore.
-
Déterminer si le joueur a perdu.
-
Gérer le chronomètre et déterminer si le temps imparti est terminé.
quand drapeau vert est cliqué
basculer sur l’arrière-plan Jeu // cet arrière-plan est utilisé en introduction (pendant le compte à rebours) et pendant la phase de jeu.
mettre Score joueur à 0 // le compteur de points est réinitialisé.
mettre Vies joueur à 3 // le joueur dispose de trois vies. Cela signifie qu’il ne doit pas être touché plus de trois fois par un tir ennemi.
cacher la variable Score joueur // elle n’est visible qu’à la fin de la partie si le joueur n’a pas perdu.
quand drapeau vert est cliqué // cette double instruction permet d’exécuter deux programmes en simultané....
Les programmes des sprites
1. Programme de Compte à rebours
Au démarrage du jeu, un compte à rebours, sous la forme d’un sprite, s’affiche à l’écran. Le jeu ne commence qu’à la fin de l’exécution de son programme.
quand drapeau vert est cliqué
basculer sur le costume costume 1 // ce costume correspond au chiffre 3.
montrer
répéter 2 fois // ouverture d’une boucle de répétition. Deux autres costumes vont se succéder sur la scène.
attendre 1 secondes
costume suivant // ce programme fonctionne si l’ordre des costumes est bien respecté.
Fermeture de la boucle de répétition.
attendre 1 secondes
cacher
envoyer à tous Jouer // ce message est utilisé pour lancer l’exécution des scripts des différents sprites du jeu.
envoyer à tous Chronomètre // ce message permet de démarrer le chronomètre. Le temps d’une partie est limité.
2. Programme de Joueur
Le programme du sprite Joueur est composé de quatre piles de blocs.
Première pile de blocs
Il s’agit de la pile servant à paramétrer les caractéristiques du sprite.
quand drapeau vert est cliqué
s’orienter en direction de 180 // le vaisseau ayant été dessiné verticalement, il faut le positionnement horizontalement, face aux vaisseaux ennemis.
aller à x: -180 y: 0
mettre la taille à 80 % de la taille initiale // cette valeur est donnée à titre indicatif, tout dépend de vos sprites.
basculer le costume costume 1 // il s’agit du costume qui ne figure pas le vaisseau en train de tirer.
cacher // la partie n’ayant pas encore commencé, aucun élément du jeu n’est visible.
Deuxième pile de blocs
Cette pile de blocs contient les différents algorithmes utilisés pour déplacer le vaisseau du joueur vers le haut ou vers le bas, pour tirer ainsi que pour déterminer si le joueur a été touché par un tir ennemi. Leur exécution est soumise à quatre conditions.
quand je reçois Jouer // ce message déclenche le jeu et synchronise l’exécution de tous...
Conclusion
Ce jeu minimaliste dans sa structure reste tout de même un jeu prenant par l’ajout d’une bande-son. En effet, tout comme dans les films, les bandes musicales ont un impact sur l’état psychologique du joueur. Elles servent à ambiancer.
Ce jeu peut être amélioré de différentes manières :
-
Des niveaux supplémentaires comportant plus d’ennemis à toucher peuvent être créés.
-
Des vitesses variables peuvent être appliquées aux déplacements des vaisseaux ennemis.
-
Les vaisseaux ennemis peuvent changer d’apparence au fur et à mesure qu’ils sont touchés. Dans ce cas, une variable gère le nombre d’impacts et un costume différent est associé à chaque valeur.
-
Un boss de fin, c’est-à-dire un ennemi plus puissant, peut être ajouté en fin de niveau ou de partie. Il peut prendre l’aspect d’un plus gros vaisseau, comme l’Étoile de la mort si vous souhaitez conserver une thématique s’inspirant de Star Wars.
-
Plusieurs types de projectiles peuvent être mis à disposition du joueur, en nombre limité.
Les développements sont infinis !