Programmation d’un jeu vidéo en POO
À propos de la leçon
#8 Créer un fichier nommé bulle.py et contenant le code suivant :
  1. import pyxel
  2.  
  3. class Bulle:
  4.     def __init__(self,x,y,taille):
  5.         self.x = x
  6.         self.y = y
  7.         self.taille = taille
  8.        
  9.     def update(self):
  10.         pass
  11.        
  12.     def draw(self):
  13.         # On dessine un cercle
  14.         pyxel.circb(self.x,self.y,self.taille,10)
#9 On veut pouvoir souffler plusieurs bulles magiques dans le jeu. Pour cela, on va créer une liste de bulles qui va stocker l’ensemble des nombreuses instances de la classe Bulle.
  • Ajouter alors l’instruction suivante dans le constructeur de la classe Jeu (AVANT le pyxel.run()):
  1. self.liste_bulles = []
  • Ajouter l’importation de la classe Bulle dans le fichier jeu.py
  1. from bulle import *
#10 À chaque pression sur la barre ESPACE, une nouvelle bulle magique va apparaître à l’écran. Ajouter le code suivant dans la fonction update() de la classe Jeu :
  1. #creation des bulles et ajout dans une liste
  2.         if pyxel.btnr(pyxel.KEY_SPACE) :
  3.             self.liste_bulles.append(Bulle(60,160,5))
#11 Il faut à présent dessiner chaque bulle de la liste des bulles en parcourant la liste en entier. Ajouter le code suivant dans la fonction draw() de la classe Jeu :
  1. #dessin des bulles
  2.     for bulle in self.liste_bulles:
  3.         bulle.draw()
  4.     print(len(self.liste_bulles)) # print de debogage
#12 Lancer le programme Jeu et appuyer sur la barre ESPACE. À quoi sert le print() de débogage ajouté précédemment ?
Réussite si un cercle jaune apparaît au milieu de la raquette.
NB Toutes les bulles sont superposées donc un seul cercle jaune apparaît pour l’instant à l’écran !!

 

Pour ceux qui n’auraient pas compris, le cercle jaune, c’est la bulle 😉