Arts >> Arte >  >> Teatro >> Dramaturgia

¿Cuál es el código del laberinto en el libro del corredor?

```pitón

importar pygame

Definir algunos colores

NEGRO =(0, 0, 0)

BLANCO =(255, 255, 255)

Establecer la altura y el ancho de la pantalla

tamaño =[700, 500]

pantalla =pygame.display.set_mode(tamaño)

Bucle hasta que el usuario haga clic en el botón cerrar.

hecho =falso

reloj =pygame.time.Reloj()

Velocidad en píxeles por segundo

velocidad_x =0

velocidad_y =0

Posición actual

coord_x =10

coord_y =10

Crea un laberinto

laberinto =[

[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]

]

Ciclo mientras esté hecho ==Falso

mientras no haya terminado:

# Esto limita el bucle while a un máximo de 10 veces por segundo.

# Deja esto fuera y usaremos toda la CPU que podamos.

reloj.tick(10)

para evento en pygame.event.get():# El usuario hizo algo

if event.type ==pygame.QUIT:# Si el usuario hizo clic en cerrar

done =True # Marca que hemos terminado para salir de este bucle

# Limpiar la pantalla y configurar el fondo de la pantalla

pantalla.relleno (NEGRO)

# Dibuja el laberinto

para la fila en el rango (9):

para la columna en el rango (10):

si laberinto[fila][columna] ==1:

pygame.draw.rect(pantalla, BLANCO, [(25 * columna), (25 * fila), 25, 25])

# Dibuja el corredor

pygame.draw.rect(pantalla, BLANCO, [coord_x, coord_y, 25, 25])

# Mueve el corredor según la tecla presionada

presionado =pygame.key.get_pressed()

si se presiona[pygame.K_UP]:

velocidad_y =-5

elif presionado[pygame.K_DOWN]:

velocidad_y =5

elif presionado[pygame.K_LEFT]:

velocidad_x =-5

elif presionó[pygame.K_RIGHT]:

x_velocidad =5

# Actualizar la posición del corredor.

x_coord +=x_velocidad

y_coord +=y_velocidad

# Si el corredor golpea el borde de la pantalla, rebota

si coord_x> 675:

velocidad_x =-5

elif x_coord <0:

x_velocidad =5

si coord_y> 475:

velocidad_y =-5

elif y_coord <0:

velocidad_y =5

# Si el corredor choca contra una pared, deténgalo

si laberinto[int(y_coord / 25)][int(x_coord / 25)] ==1:

velocidad_x =0

velocidad_y =0

#Actualizar la pantalla

pygame.display.flip()

Salir de pygame

pygame.salir()

```

Dramaturgia

Categorías Relacionadas