Для создания игр существует специальная библиотека pygame.
Для ее подключения необходимо в начале программы написать:
import sys, pygame
Для инициализации pygame
pygame.init()
Для загрузки спрайтов в игру
ball = pygame.image.load("ball.gif")
Для определения размеров объекта
ballrect = ball.get_rect()
Для перемещения объекта
plrect = plrect.move([0, height-100])
Где в функцию move передается массив с изменениями координат по осям x и y
Для обработки выхода из игры служит код:
for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit()
Обработка событий клавиатуры
keys = pygame.key.get_pressed() if keys[pygame.K_RIGHT]: plrect = plrect.move([3,0]) if keys[pygame.K_LEFT]: plrect = plrect.move([-3,0])
Для создания фона игры
screen.fill(black)
Для отображения объекта на экране
screen.blit(ball, ballrect)
Для управления fps
pygame.time.wait(10)
для отображения созданного кадра
pygame.display.flip()
Простой пример кода игры:
import sys, pygame pygame.init() size = width, height = 320, 240 speed = [2, 2] black = 0, 0, 0 screen = pygame.display.set_mode(size) ball = pygame.image.load("ball.gif") platform = pygame.image.load("platform.png") ballrect = ball.get_rect() plrect = platform.get_rect() plrect = plrect.move([0, height-100]) while 1: for event in pygame.event.get(): if event.type == pygame.QUIT: sys.exit() keys = pygame.key.get_pressed() if keys[pygame.K_RIGHT]: plrect = plrect.move([3,0]) if keys[pygame.K_LEFT]: plrect = plrect.move([-3,0]) ballrect = ballrect.move(speed) if ballrect.left < 0 or ballrect.right > width: speed[0] = -speed[0] if ballrect.top < 0 or ballrect.bottom > height: speed[1] = -speed[1] screen.fill(black) screen.blit(ball, ballrect) screen.blit(platform, plrect) pygame.time.wait(10) pygame.display.flip()
Задание:
Доделать код чтобы мяч отталкивался от платформы.