Rivivi un classico. Ecco una breve realizzazione del gioco Pong di Atari in Python con l’aiuto di PyGame.

Rivivi un classico. Ecco una breve realizzazione del gioco Pong di Atari in Python con l’aiuto di PyGame.

Novembre 12, 2023 0 Di Ruggero Grando
if ball_pos.top <= 0 or ball_pos.bottom >= height:
    ball_y_speed = -ball_y_speed

Questa condizione verifica se la parte superiore della palla ha superato o è a contatto con il bordo superiore dello schermo (ball_pos.top <= 0) o se la parte inferiore della palla ha superato o è a contatto con il bordo inferiore dello schermo (ball_pos.bottom >= height). Se una di queste condizioni è vera, la velocità verticale “ball_y_speed” viene invertita, causando un rimbalzo della palla sui bordi superiori e inferiori dello schermo.

if ball_pos.colliderect(left_paddle_pos) or ball_pos.colliderect(right_paddle_pos):
    ball_x_speed = -ball_x_speed

In questa sezione, viene controllata la collisione della palla con i paddle. Viene utilizzato il metodo colliderect() per verificare se il rettangolo della palla (ball_pos) si sovrappone con il rettangolo del paddle sinistro (left_paddle_pos) o del paddle destro (right_paddle_pos). Se c’è una collisione, la velocità orizzontale “ball_x_speed” viene invertita, causando un rimbalzo della palla sui paddle.

screen.fill(bg_color)

Questo comando riempie lo schermo con un colore di sfondo specificato dalla variabile “bg_color” e prepara lo schermo per il disegno degli elementi del gioco nel frame corrente.

pygame.draw.rect(screen, paddle_color, left_paddle_pos)
pygame.draw.rect(screen, paddle_color, right_paddle_pos)
pygame.draw.ellipse(screen, paddle_color, ball_pos)

Queste righe disegnano i paddle e la palla sullo schermo. La funzione pygame.draw.rect() viene utilizzata per disegnare i rettangoli dei paddle (left_paddle_pos e right_paddle_pos) con il colore specificato da “paddle_color“. La funzione pygame.draw.ellipse() viene utilizzata per disegnare l’ellisse della palla (ball_pos) con lo stesso colore dei paddle.

pygame.display.flip()

Il comando pygame.display.flip() aggiorna la schermata mostrando gli elementi disegnati. Vengono visualizzate tutte le modifiche fatte allo schermo, fornendo una visualizzazione aggiornata del gioco al giocatore.

Affrontiamo l’ultima riga di codice mostra di seguito.

pygame.quit()

La riga di codice pygame.quit() è una chiamata di funzione che viene utilizzata per terminare l’applicazione pygame correttamente. Essa chiude tutti i sottosistemi avviati da pygame.init() e pulisce le risorse di sistema allocate per l’esecuzione dell’applicazione pygame.

Quando si sviluppa un’applicazione pygame, è una pratica comune utilizzare pygame.quit() alla fine del programma per assicurarsi che tutte le risorse siano liberate correttamente e che l’applicazione si chiuda in modo pulito.

Pagina Successiva | Pagina Precedente

No votes yet.
Please wait...

Pagine: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18