From 82d313e0724af7ec6a8f6d08124dedd3742ef88c Mon Sep 17 00:00:00 2001 From: Spectre Date: Tue, 21 Jan 2025 15:39:10 +0100 Subject: [PATCH] Auto urgent commit. --- learning_pygame/bouncing_ball/constantes.py | 5 ++ learning_pygame/bouncing_ball/f | 53 +++++++++++++++++++++ learning_pygame/bouncing_ball/raquette.py | 49 +++++++++++++++++++ 3 files changed, 107 insertions(+) create mode 100644 learning_pygame/bouncing_ball/constantes.py create mode 100644 learning_pygame/bouncing_ball/f create mode 100644 learning_pygame/bouncing_ball/raquette.py diff --git a/learning_pygame/bouncing_ball/constantes.py b/learning_pygame/bouncing_ball/constantes.py new file mode 100644 index 0000000..a4e8f30 --- /dev/null +++ b/learning_pygame/bouncing_ball/constantes.py @@ -0,0 +1,5 @@ +LARGEUR_ECRAN = 600 +HAUTEUR_ECRAN = 800 + +BLANC = (255,255,255) + diff --git a/learning_pygame/bouncing_ball/f b/learning_pygame/bouncing_ball/f new file mode 100644 index 0000000..80d88c8 --- /dev/null +++ b/learning_pygame/bouncing_ball/f @@ -0,0 +1,53 @@ +───────┬────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + │ File: raquette.py +───────┼────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + 1 │ import sys + 2 │ import pygame + 3 │ from balle import Balle + 4 │ from raquette import Raquette + 5 │ from constantes import * + 6 │ + 7 │ pygame.init() + 8 │ + 9 │ # Création de la fenêtre + 10 │ ecran = pygame.display.set_mode((LARGEUR_ECRAN, HAUTEUR_ECRAN)) + 11 │ ecran.fill(BLANC) + 12 │ pygame.display.set_caption('Balle rebondissante avec raquette') + 13 │ + 14 │ clock = pygame.time.Clock() + 15 │ + 16 │ # Initialisation des objets + 17 │ balle = Balle() + 18 │ raquette = Raquette() + 19 │ + 20 │ bouge = False + 21 │ + 22 │ while True: # Boucle principale + 23 │  for event in pygame.event.get(): + 24 │  if event.type == pygame.QUIT: + 25 │  sys.exit() + 26 │  elif event.type == pygame.KEYDOWN: + 27 │  if event.key == pygame.K_SPACE: + 28 │  bouge = not bouge + 29 │  elif event.key == pygame.K_LEFT: + 30 │  raquette.deplaceGauche() + 31 │  elif event.key == pygame.K_RIGHT: + 32 │  raquette.deplaceDroite() + 33 │ + 34 │  ecran.fill(BLANC) + 35 │ + 36 │  if bouge: + 37 │  balle.deplace() + 38 │ + 39 │  # Collision balle-raquette + 40 │  if (balle.ypos + balle.rayon >= HAUTEUR_ECRAN - 20 and + 41 │  raquette.xpos <= balle.xpos <= raquette.xpos + raquette.largeur): + 42 │  balle.yvit = -balle.yvit + 43 │ + 44 │  balle.affiche(ecran) + 45 │  raquette.affiche(ecran) + 46 │ + 47 │  pygame.display.update() + 48 │  clock.tick(60) + 49 │ +───────┴────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── diff --git a/learning_pygame/bouncing_ball/raquette.py b/learning_pygame/bouncing_ball/raquette.py new file mode 100644 index 0000000..718e645 --- /dev/null +++ b/learning_pygame/bouncing_ball/raquette.py @@ -0,0 +1,49 @@ +import sys +import pygame +from balle import Balle +from raquette import Raquette +from constantes import * + +pygame.init() + +# Création de la fenêtre +ecran = pygame.display.set_mode((LARGEUR_ECRAN, HAUTEUR_ECRAN)) +ecran.fill(BLANC) +pygame.display.set_caption('Balle rebondissante avec raquette') + +clock = pygame.time.Clock() + +# Initialisation des objets +balle = Balle() +raquette = Raquette() + +bouge = False + +while True: # Boucle principale + for event in pygame.event.get(): + if event.type == pygame.QUIT: + sys.exit() + elif event.type == pygame.KEYDOWN: + if event.key == pygame.K_SPACE: + bouge = not bouge + elif event.key == pygame.K_LEFT: + raquette.deplaceGauche() + elif event.key == pygame.K_RIGHT: + raquette.deplaceDroite() + + ecran.fill(BLANC) + + if bouge: + balle.deplace() + + # Collision balle-raquette + if (balle.ypos + balle.rayon >= HAUTEUR_ECRAN - 20 and + raquette.xpos <= balle.xpos <= raquette.xpos + raquette.largeur): + balle.yvit = -balle.yvit + + balle.affiche(ecran) + raquette.affiche(ecran) + + pygame.display.update() + clock.tick(60) +