Братишка, я вообще не шарю за pygame, но немного подправил тебе код. У тебя не были соблюдены элементарные отступы и т.д. . Разбирайся дальше сам.
<
import pygame
pygame.init()
width = 640
height = 480
display = pygame.display.set_mode((width, height))
pygame.display.update()
pygame.display.set_caption("Snakee game")
game_end = False
colors = { # colors = {} ...
"snake_head": (0, 255, 0),
"snake_tail": (0, 200, 0),
"apple": (255, 0, 0)
}
snake_pos = { # snake pos = {} ...
"x": width /2-5,
"y": height /2-5,
"x_change": 0,
"y_change": 0
}
snake_size = (10, 10)
snake_speed = 10
while not game_end: # НЕ БЫЛО ОТСТУПОВ
for event in pygame.event.get():
if event.type == pygame.QUIT:
game_end = True
elif event.type == pygame.KEYDOWN:
# Движение в лево
if event.key == pygame.K_LEFT:
snake_pos["x_change"] = snake_speed
snake_pos["y_change"] = 0
elif event.key == pygame.K_RIGHT:
snake_pos["x_change"] = snake_speed
snake_pos["y_change"] = 0
elif event.key == pygame.K_UP:
snake_pos["x_change"] = 0
snake_pos["y_change"] = -snake_speed
elif event.key == pygame.K_DOWN:
snake_pos["x_change"] = 0
snake_pos["y_change"] = snake_speed
snake_pos["x"] += snake_pos["x_change"] # что с этими двумя строчками делать я не знаю
snake_pos["y"] += snake_pos["y_change"]
pygame.draw.rect(display, colors["snake_head"], [
snake_pos["x"],
snake_pos["y"],
snake_size[0],
snake_size[1]])
pygame.display.update()
pygame.draw.rect( display, (0,255,0), [640/2-5, 480/2-5, 10, 10] )
pygame.quit()
quit()