import poorpyxel as ppx
from random import randint

class Bulle:

    # constructeur
    def __init__(self, x, y, taille, couleur, vx, vy):
        self.x = x
        self.y = y
        self.couleur = couleur
        self.taille = taille
        self.vx = vx # vitesse horizontale initiale ( vers la gauche ou la droite )
        self.vy = vy # vitesse verticale initiale ( vers le haut ! )

    def afficher(self):
        ppx.circ(self.x, self.y, self.taille, self.couleur)

    def bouger(self):
        self.x = self.x + self.vx
        self.y = self.y + self.vy
        self.vy = self.vy + 10*50e-3

        if ( self.y > ppx.height ): # retour sur Terre ?
            self.x = ppx.width//2
            self.y = ppx.height
            self.couleur = randint(1, 15) # indice de la couleur dans la liste 'couleurs'
            self.taille = 1
            self.vx = randint(-2, 2) # vitesse horizontale initiale ( vers la gauche ou la droite )
            self.vy = randint(-10, -5) # vitesse verticale initiale ( vers le haut ! )

ppx.init(128, 128)

def update():
    for i in range(len(bulles)):
        bulles[i].bouger()

def draw():
    ppx.cls(0)
    for i in range(len(bulles)):
        bulles[i].afficher()


# construction liste des bulles

bulles = []

for i in range(50):
    bulles.append(Bulle(ppx.width//2, ppx.height, 1, randint(1, 15), randint(-2, 2), randint(-10, -5)))

ppx.run(update, draw)

