我正在尝试使用pygame在python中创建蛇,但我不知道如何通过按一个键使蛇的头部连续移动。
我尝试使用while循环,但这只会导致程序冻结。
run = True
while run:
pygame.time.delay(100)
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT] and snake_x > 0:
snake_x -= snake_vel
if keys[pygame.K_RIGHT] and snake_x < 500 - snake_vel:
snake_x += snake_vel
if keys[pygame.K_DOWN] and snake_y < 500 - snake_vel:
snake_y += snake_vel
if keys[pygame.K_UP] and snake_y > 0:
snake_y -= snake_vel
canvas.fill((0, 0, 0))
snake = pygame.draw.rect(canvas, (0, 255, 0), (snake_x, snake_y, snake_width, snake_height))
pygame.display.update()
到目前为止,蛇头只在按住一个箭头键的同时移动,但是我希望它在按住一个箭头键的情况下连续移动,直到按下另一个箭头键为止。