importera pygame
SVART =(0, 0, 0)
VIT =(255, 255, 255)
storlek =[700, 500]
skärm =pygame.display.set_mode(size)
gjort =Falskt
klocka =pygame.time.Clock()
x_hastighet =0
y_hastighet =0
x_coord =10
y_coord =10
labyrint =[
[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]
]
medan inte gjort:
# Detta begränsar while-slingan till max 10 gånger per sekund.
# Lämna det här ute så kommer vi att använda all CPU vi kan.
clock.tick(10)
för händelse i pygame.event.get():# Användaren gjorde något
if event.type ==pygame.QUIT:# Om användaren klickade på stäng
done =True # Flagga att vi är klara så vi lämnar denna loop
# Rensa skärmen och ställ in skärmens bakgrund
screen.fill(SVART)
# Rita labyrinten
för rad i intervallet(9):
för kolumn i intervallet(10):
om labyrint[rad][kolumn] ==1:
pygame.draw.rect(skärm, VIT, [(25 * kolumn), (25 * rad), 25, 25])
# Rita löparen
pygame.draw.rect(skärm, VIT, [x_coord, y_coord, 25, 25])
# Flytta löparen baserat på nedtryckt tangent
pressed =pygame.key.get_pressed()
om du trycker på[pygame.K_UP]:
y_speed =-5
elif tryckte på[pygame.K_DOWN]:
y_speed =5
elif tryckte på[pygame.K_LEFT]:
x_hastighet =-5
elif tryckte på[pygame.K_RIGHT]:
x_hastighet =5
# Uppdatera löparens position
x_coord +=x_speed
y_coord +=y_speed
# Om löparen träffar kanten av skärmen studsar du tillbaka den
om x_coord> 675:
x_hastighet =-5
elif x_coord <0:
x_hastighet =5
om y_coord> 475:
y_speed =-5
elif y_coord <0:
y_speed =5
# Om löparen träffar en vägg, stoppa den
om labyrint[int(y_coord / 25)][int(x_coord / 25)] ==1:
x_hastighet =0
y_hastighet =0
#Uppdatera skärmen
pygame.display.flip()
pygame.quit()
```