Modifications

Sauter à la navigation Sauter à la recherche
2 166 octets ajoutés ,  4 mars 2025 à 23:30
Ligne 206 : Ligne 206 :  
* '''Lignes 57 à 64''' : sont identiques aux lignes 47 à 54 exception fait que cela s'applique au joueur 2 (donc led2, btn2, btn2_pressed).
 
* '''Lignes 57 à 64''' : sont identiques aux lignes 47 à 54 exception fait que cela s'applique au joueur 2 (donc led2, btn2, btn2_pressed).
 
* '''Lignes 67 à 72''' : initialisation des derniers éléments, le bouton "Start", la LED de statut et le `buzzer` comme élément sonore. La classe {{fname|RingTonePlayer}} [[P2E-Buzzer-Music-FR|était abordé dans ce tutoriel]].
 
* '''Lignes 67 à 72''' : initialisation des derniers éléments, le bouton "Start", la LED de statut et le `buzzer` comme élément sonore. La classe {{fname|RingTonePlayer}} [[P2E-Buzzer-Music-FR|était abordé dans ce tutoriel]].
 +
* '''Ligne 77''' : configuration de la LED de statut {{fname|led_status}} en mode clignotant (BLINK).
 +
* '''Lignes 78 à 80''': boucle {{fname|while}} attendant que l'on presse sur le bouton "Start". Dans l'attente l'appel à la méthode {{fname|led_status.update()}} permet de faire clignoter la LED à intervalle régulier.
 +
* '''Ligne 81''' : le bouton "Start" a été pressé, la LED de statut est éteinte.
 +
* '''Ligne 82''' : boucle {{fname|while}} infinie permettant de jouer round après round. Le corps du script situé entre les lignes 83 à 137 permet donc de jouer un round.
 +
 +
Exécution d'un round
 +
 +
* '''Ligne 90''' : utilisation de fonction {{fname|randint(3,10)}} pour générer un nombre aléatoire entre 3 et 10 secondes. Cette valeur est multipliée par 1000 pour obtenir une valeur en millisecondes. Cette valeur est stockée dans la variable {{fname|wait_ms}} .
 +
* '''Lignes 91 à 92''' : réinitialiser les variables {{fname|first_btn1}} et {{fname|first_btn2}} à '''None''' (bouton pas encore pressé).
 +
* '''Ligne 93''' : jouer la mélodie de début de jeu.
 +
* '''Ligne 101''' : capture du nombre de millisecondes écoulée dans {{fname|start_ms}}. Cela permet de mesurer l'écoulement du temps.
 +
* '''Ligne 102''' : initialisation de la variable {{fname|_led}} à '''None'''. Cette variable sera initialisée à {{fname|led1}} ou {{fname|led2}} pour désigner le joueur (gagnant ou perdant).
 +
* '''Lignes 103 à 109''' : boucle d'attente de 0 à {{fname|wait_ms}} millisecondes avant d'envoyer le signal "GO". Si un joueur presse son bouton durant ce laps de temps, alors la variable correspondant {{fname|first_btnX}} est initialisée (donc différent de '''None''').
 +
* '''Ligne 106''' : expression ternaire qui initialise {{fname|_led}} à {{fname|led1}} ou {{fname|led2}} en fonction du bouton pressé. Cela identifie le perdant!
 +
* '''Ligne 107 à 109''' : allumer la LED du joueur perdant, jouer la musique "Perdu" et interrompre la boucle d'attente avec l'instruction {{fname|break}} .
 +
* '''Ligne 110''' : lorsque le script passe sur cette ligne: (1) soit le temps d'attente est terminé, (2) soit un joueur à pressé sur son bouton trop tôt!
    
== Un problème? ==
 
== Un problème? ==
32 920

modifications

Menu de navigation