importa pygame
NERO =(0, 0, 0)
BIANCO =(255, 255, 255)
dimensione =[700, 500]
schermo =pygame.display.set_mode(dimensione)
fatto =falso
orologio =pygame.time.Clock()
x_velocità =0
y_velocità =0
x_coordinata =10
coordina_y =10
labirinto =[
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
[1, 0, 1, 0, 1, 0, 1, 0, 1, 1],
[1, 0, 0, 0, 1, 0, 0, 0, 1, 1],
[1, 0, 1, 0, 1, 1, 1, 0, 1, 1],
[1, 0, 1, 0, 0, 0, 1, 0, 1, 1],
[1, 0, 1, 1, 1, 0, 1, 0, 1, 1],
[1, 0, 0, 0, 0, 0, 1, 0, 0, 1],
[1, 0, 1, 1, 1, 1, 1, 0, 1, 1],
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
]
mentre non è stato fatto:
# Questo limita il ciclo while a un massimo di 10 volte al secondo.
# Lasciamo perdere questo e utilizzeremo tutta la CPU possibile.
orologio.tick(10)
for event in pygame.event.get():# L'utente ha fatto qualcosa
if event.type ==pygame.QUIT:# Se l'utente ha fatto clic su chiudi
done =True # Segnala che abbiamo finito, quindi usciamo da questo ciclo
# Cancella lo schermo e imposta lo sfondo dello schermo
schermo.fill(NERO)
# Disegna il labirinto
per la riga nell'intervallo(9):
per la colonna in range(10):
if labirinto[riga][colonna] ==1:
pygame.draw.rect(schermo, BIANCO, [(25 * colonna), (25 * riga), 25, 25])
# Disegna il corridore
pygame.draw.rect(schermo, BIANCO, [x_coord, y_coord, 25, 25])
# Muovi il corridore in base al tasto premuto
premuto =pygame.key.get_pressed()
se premuto[pygame.K_UP]:
y_velocità =-5
elif premuto[pygame.K_DOWN]:
y_velocità =5
elif premuto[pygame.K_LEFT]:
x_velocità =-5
elif premuto[pygame.K_RIGHT]:
x_velocità =5
# Aggiorna la posizione del corridore
x_coord +=x_velocità
coordina_y +=velocità_y
# Se il corridore colpisce il bordo dello schermo, rimbalzalo indietro
se x_coord> 675:
x_velocità =-5
elif x_coord <0:
x_velocità =5
se coordina_y> 475:
y_velocità =-5
elif coordina_y <0:
y_velocità =5
# Se il corridore colpisce un muro, fermalo
if labirinto[int(y_coord / 25)][int(x_coord / 25)] ==1:
x_velocità =0
y_velocità =0
#Aggiorna lo schermo
pygame.display.flip()
pygame.quit()
```