Arts >> Arte >  >> teatro >> Drammaturgia

Qual è il codice per labirinto sul runner book?

```pitone

importa pygame

Definisci alcuni colori

NERO =(0, 0, 0)

BIANCO =(255, 255, 255)

Imposta l'altezza e la larghezza dello schermo

dimensione =[700, 500]

schermo =pygame.display.set_mode(dimensione)

Ciclo ciclico finché l'utente non fa clic sul pulsante di chiusura.

fatto =falso

orologio =pygame.time.Clock()

Velocità in pixel al secondo

x_velocità =0

y_velocità =0

Posizione attuale

x_coordinata =10

coordina_y =10

Crea un labirinto

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]

]

Loop finché è finito ==False

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()

Esci da pygame

pygame.quit()

```

Drammaturgia

Categorie correlate