Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pygame
- pygame.init() # Инициализируем модуль pygame
- width = 1366 # ширина игрового окна
- height = 768 # высота игрового окна
- fps = 30 # частота кадров в секунду
- game_name = "Arkanoid" # название нашей игры
- # Цвета
- BLACK = "#000000"
- WHITE = "#FFFFFF"
- RED = "#FF0000"
- GREEN = "#008000"
- BLUE = "#0000FF"
- CYAN = "#00FFFF"
- # Создаем игровой экран
- screen = pygame.display.set_mode((width, height))
- pygame.display.set_caption(game_name) # Заголовок окна
- icon = pygame.image.load('icon.png') # Загружаем файл с иконкой
- pygame.display.set_icon(icon) # Устанавливаем иконку в окно
- timer = pygame.time.Clock() # Создаем таймер pygame
- run = True
- pic = pygame.image.load('smile.png') # Загружаем спрайт
- pic_rect = pic.get_rect() # Получаем рамку спрайта
- racket = pygame.image.load('racket.png') # Загружаем спрайт игрока
- racket_rect = racket.get_rect() # Получаем рамку спрайта игрока
- racket_rect.x = width / 2 - racket.get_width()/2
- racket_rect.y = height - 50
- speedx = 10 # Скорость движения по горизонтали
- speedy = 10 # Скорость движения по вертикали
- while run: # Начинаем бесконечный цикл
- timer.tick(fps) # Контроль времени (обновление игры)
- for event in pygame.event.get(): # Обработка ввода (события)
- if event.type == pygame.QUIT: # Проверить закрытие окна
- run = False # Завершаем игровой цикл
- key = pygame.key.get_pressed() # Считываем нажатия на клавиши
- if key[pygame.K_LEFT] and racket_rect.left > 0: # Движение влево
- racket_rect.x -= 10
- if key[pygame.K_RIGHT] and racket_rect.right < width: # Движение вправо
- racket_rect.x += 10
- # Рендеринг (прорисовка)
- screen.fill(CYAN) # Заливка заднего фона
- screen.blit(pic, pic_rect)
- pic_rect.x += speedx # Увеличиваем координату Х спрайта
- pic_rect.y += speedy # Увеличиваем координату Y спрайта
- if pic_rect.bottom > height: # Если достигли нижней границы экрана
- speedy = -speedy
- if pic_rect.top < 0: # Если достигли верхней границы экрана
- speedy = -speedy
- if pic_rect.left < 0: # Если достигли левой границы экрана
- speedx = -speedx
- if pic_rect.right > width: # Если достигли правой границы экрана
- speedx = -speedx
- if pic_rect.colliderect(racket_rect): # Столкновение рамок смайлика и ракетки
- speedy = -speedy # Изменяем скорость движения смайлика
- screen.blit(racket, racket_rect)
- pygame.display.update() # Переворачиваем экран
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement