Projet: Petit jeu microbit, « Attrape la led »
Cahier des charges:
Une led bouge selon le mouvement de la carte.
- -Lorsque la carte est penchée en avant, faire se déplacer le point vers le haut.
- -Lorsque la carte est penchée en arrière, faire se déplacer le point vers le bas.
- -Lorsque la carte est penchée vers la gauche, faire se déplacer le point vers la gauche.
- -Lorsque la carte est penchée vers la droite, faire se déplacer le point vers la droite.
Allumer une autre led « objectif » aléatoire qui ne bouge pas.
- Lorsque le point touche le point d’objectif, jouer un son de victoire et montrer une image clignotante, puis replacer le point d’objectif aléatoirement pour que le jeu continue.
Voici le code avec explications:
from microbit import * import random import music #définit les abscisses et ordonnées des 2 pixels au début x=1 y=1 v=(random.randint(0, 4)) w=(random.randint(0, 4)) display.set_pixel(v,w,9) while True: #définit comment le point va se déplacer selon les mvt de la carte avec l'accéléromètre accX=accelerometer.get_x() accY=accelerometer.get_y() if accX > 100 and x<4: x += 1 elif accX < 100 and x>0: x -= 1 elif accY > 100 and y<4: y += 1 elif accY < 100 and y>0: y -= 1 display.clear() #place le point objectif display.set_pixel(x,y,9) display.set_pixel(v,w,9) sleep(100) #lorsque le point touche le point objectif: if x==v and y==w: #jouer un son se victoire music.play(music.POWER_UP) #la luminosité des leds passe de 9 et baisse jusqu'à 0 flash = [Image().invert()*(i/9) for i in range(9, -1, -1)] #montrer 2 images de flash display.show(flash, delay=35) display.show(flash, delay=35) sleep(100) #replacer un nouveau point d'objectif aléatoirement v=(random.randint(0, 4)) w=(random.randint(0, 4))