def draw_snake(snake_block, snake_list):
for i, x in enumerate(snake_list):
color = blue if i == len(snake_list)-1 else green
pygame.draw.rect(dis, color, [x[0], x[1], snake_block, snake_block])
while not game_over:
while game_close:
dis.fill(white)
message("游戏结束! 按Q退出或按C重新开始", red)
show_score(length_of_snake - 1)
pygame.display.update()
for event in pygame.event.get():
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_q:
game_over = True
game_close = False
if event.key == pygame.K_c:
game_loop()
for event in pygame.event.get():
if event.type == pygame.QUIT:
game_over = True
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT and x1_change == 0:
x1_change = -snake_block
y1_change = 0
elif event.key == pygame.K_RIGHT and x1_change == 0:
x1_change = snake_block
y1_change = 0
elif event.key == pygame.K_UP and y1_change == 0:
y1_change = -snake_block
x1_change = 0
elif event.key == pygame.K_DOWN and y1_change == 0:
y1_change = snake_block
x1_change = 0
# 边界检测
if x1 >= dis_width or x1 < 0 or y1 >= dis_height or y1 < 0:
game_close = True