Objectifs
- Manipuler un système embarqué ;
- Récupérer des informations via des capteurs ;
- Créer des événements grâce aux actionneurs ;
- Envoyer et recevoir des informations.
Projet - Créer le jeu Duel Laser sur micro:bit 🎮
Projet
Ce projet se réalise par groupe de 4, organisés en 2 binômes.
Chaque binôme utilise une carte micro:bit.
Le but est de créer un jeu de tir en duel, où :
- Une carte contrôle un joueur qui esquive.
- L’autre carte contrôle un tireur qui tente de toucher le joueur.
- Les cartes
communiquententre elles par radio.
Les rôles s’échangent automatiquement pendant la partie, et le jeu doit donner des retours visuels selon que le tir touche ou rate.
🎯 Règles du jeu
- Un joueur déplace un point (le "personnage") en bas de l’écran pour esquiver les tirs à l'aide des boutons.
- L’autre joueur déplace un viseur (en haut) et peut tirer.
- Si le tir atteint la position du joueur → c’est touché.
- Sinon → le tir est raté.
- Des animations différentes sont affichées selon que le tir touche ou rate.
- Après un certain temps ou nombre de tirs, les rôles s’inversent automatiquement.
🛠️ Étapes à suivre
Étape 1 : Initialiser la communication radio
Dans chaque programme :
- On définit pour chaque carte un groupe pour la radio (il faut que les 2 cartes soient dans le même groupe pour communiquer).
Étape 2 : Carte Joueur (celui qui esquive)
- Créer une variable
xJoueurà2,xTirinitialisée à-1,vieà3. - Allumer une LED au point de coordonnées
(xJoueur, 4) - Déplacement :
bouton A pressé→ décrémentexJoueur(si > 0)bouton B pressé→ incrémentexJoueur(si < 4)- Efface et réaffiche le point
- Lorsqu’un message
"tir"est reçu par radio :- Changer la valeur de
xTirpar celle reçue par radio - Faire descendre un point, allant de
(xTir, 0)jusqu’à(xTir, 4) - Si les coordonnées
xdu tir et du joueur sont égales, à la ligne 4 :- Afficher un crâne ☠️
- Envoyer
"touche"par radio - Retirer une vie
- Si plus de vie → afficher
"Perdu"
- Sinon :
- Afficher un smiley 😊
- Envoyer
"rate"par radio
- Changer la valeur de
Étape 3 : Carte Tireur
- Créer une variable
xTireurà2 - Allumer une LED au point de coordonnées
(xTireur, 0) - Déplacement :
bouton A pressé→ décrémentexTireur(si > 0)bouton B pressé→ incrémentexTireur(si < 4)
- Tir :
A+B pressés→ envoyer"tir"avecxTireur
- Réception :
- Si
"touche"→ afficher une étoile ⭐ ou autre symbole de réussite - Si
"rate"→ afficher une croix ❌
- Si
Étape 4 : Inversion des rôles
- Créer une variable
mode:"joueur"ou"tireur" - Après n tirs ou 30 secondes :
- Envoyer
"changer"par radio
- Envoyer
- Quand
"changer"est reçu :- Alterner le rôle
- Réinitialiser les positions
- Nettoyer l’écran
📄 À rendre
- Une démonstration fonctionnelle du jeu entre les 2 micro:bits.
- Un document word (avec noms et prénoms des membres du groupe) avec :
- Rôle de chaque binôme
- Fonctions principales réalisées
- Ce qui a bien ou mal fonctionné
- Le programme enregistré sous forme de lien MakeCode :
- Mettre vos noms dans
Project Title - Cliquer sur
Partager le projet - Copier le lien et l'intégrer dans le word
💡 Astuces
- Ligne 0 = haut de l’écran ; ligne 4 = bas
- Utiliser
effacer écranoudésactiver led (x, y)pour nettoyer l’affichage - Commencer avec 3 vies
- Pour les rôles, on peut utiliser une variable
modedifférente sur chaque carte - Un effet visuel rapide (par ex.
montrer icône,pause, puiseffacer) permet d’attirer l'attention - Testez souvent à deux cartes.
- Ajoutez des
montrer nombrepour vérifier les valeurs - Travaillez étape par étape, commencez par les raquettes
- Pensez à tester chaque partie séparément avant de tout combiner