СРОЧНО!! ДАЮ 30 БАЛЛОВ!
Напишите код для Pygame для игры "змейка"
Желательно чтобы код был простым и не слишком длинным, заранее спасибо
Ответы на вопрос
Простой вариант игры «Змейка». Перед запуском установите библиотеку командой pip install pygame.
import pygame, random
pygame.init()
screen = pygame.display.set_mode((400, 400))
clock = pygame.time.Clock()
font = pygame.font.SysFont(None, 36)
cell = 20
snake = [(200, 200)]
food = (random.randrange(0, 400, cell), random.randrange(0, 400, cell))
dx, dy = cell, 0
run = True
while run:
for event in pygame.event.get():
if event.type == pygame.QUIT:
run = False
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_UP and dy == 0: dx, dy = 0, -cell
if event.key == pygame.K_DOWN and dy == 0: dx, dy = 0, cell
if event.key == pygame.K_LEFT and dx == 0: dx, dy = -cell, 0
if event.key == pygame.K_RIGHT and dx == 0: dx, dy = cell, 0
head = (snake[0][0] + dx, snake[0][1] + dy)
if head in snake or head[0] not in range(400) or head[1] not in range(400):
run = False
snake.insert(0, head)
if head == food:
food = (random.randrange(0, 400, cell), random.randrange(0, 400, cell))
else:
snake.pop()
screen.fill((0, 0, 0))
for part in snake:
pygame.draw.rect(screen, (0, 200, 0), (*part, cell, cell))
pygame.draw.rect(screen, (220, 50, 50), (*food, cell, cell))
screen.blit(font.render(str(len(snake) - 1), True, (255, 255, 255)), (10, 10))
pygame.display.flip()
clock.tick(10)
pygame.quit()
Управление: стрелки на клавиатуре. Игра заканчивается при столкновении со стеной или со своим телом.
Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili

