Arts >> Artes >  >> teatro >> dramaturgia

Qual é o código do labirinto no livro runner?

```píton
importar pygame

Defina algumas cores


PRETO =(0, 0, 0)
BRANCO =(255, 255, 255)

Defina a altura e largura da tela


tamanho =[700, 500]
tela =pygame.display.set_mode(tamanho)

Faça um loop até que o usuário clique no botão Fechar.


feito =Falso
relógio =pygame.time.Clock()

Velocidade em pixels por segundo


x_velocidade =0
velocidade_y =0

Posição atual


x_coord =10
y_coord =10

Crie um 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 enquanto estiver concluído ==Falso


enquanto não estiver pronto:
# Isso limita o loop while a um máximo de 10 vezes por segundo.
# Deixe isso de lado e usaremos toda a CPU que pudermos.
relógio.tick(10)

for event in pygame.event.get():# O usuário fez algo
if event.type ==pygame.QUIT:# Se o usuário clicou em fechar
done =True # Sinaliza que terminamos, então saímos deste loop

# Limpe a tela e defina o fundo da tela
tela.preencher (PRETO)

# Desenhe o labirinto
para linha no intervalo (9):
para coluna no intervalo (10):
if labirinto[linha][coluna] ==1:
pygame.draw.rect(tela, BRANCO, [(25 * coluna), (25 * linha), 25, 25])

# Desenhe o corredor
pygame.draw.rect(tela, BRANCO, [x_coord, y_coord, 25, 25])

# Mova o corredor com base na tecla pressionada
pressionado =pygame.key.get_pressed()
se pressionado[pygame.K_UP]:
velocidade_y =-5
elif pressionado[pygame.K_DOWN]:
y_velocidade =5
elif pressionado[pygame.K_LEFT]:
x_velocidade =-5
elif pressionado[pygame.K_RIGHT]:
x_velocidade =5

#Atualiza a posição do corredor
x_coord +=x_velocidade
y_coord +=y_speed

# Se o corredor atingir a borda da tela, recupere-o
se x_coord> 675:
x_velocidade =-5
elif x_coord <0:
x_velocidade =5
se y_coord> 475:
velocidade_y =-5
elif y_coord <0:
y_velocidade =5

#Se o corredor bater em uma parede, pare-o
if labirinto[int(y_coord / 25)][int(x_coord / 25)] ==1:
x_velocidade =0
velocidade_y =0

#Atualize a tela
pygame.display.flip()

Sair do pygame


pygame.quit()
```

dramaturgia

Categorias relacionadas