Advertisement
Orleon

Untitled

Nov 3rd, 2021
89
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.59 KB | None | 0 0
  1. import pygame
  2.  
  3. pygame.init()  # Включаем модуль pygame
  4.  
  5. width = 1200  # Ширина экрана
  6. height = 700  # Высота экрана
  7. fps = 30
  8. game_name = "Arkanoid"  # Название игры
  9. cyan = "#E0FFFF"
  10.  
  11. pic = pygame.image.load('smile.png')          # Загрузили спрайт
  12. pic = pygame.transform.scale(pic, (50, 50))   # Масштаб 100*100 пикселей
  13. pic_rect = pic.get_rect()                     # Получаем рамку спрайта
  14.  
  15. rack = pygame.image.load("racket.png")
  16. rack_rect = rack.get_rect()
  17. rack_rect.x = width / 2 - rack.get_width()/2
  18. rack_rect.y = height - 50
  19.  
  20. speedx = 10      # Скорость по горизонтали
  21. speedy = 10      # Скорость по вертикали
  22.  
  23. icon = pygame.image.load('icon.png')
  24. pygame.display.set_icon(icon)           # Устанавливаем иконку в окно
  25.  
  26. screen = pygame.display.set_mode((width, height))
  27. pygame.display.set_caption(game_name)  # Заголовок окна
  28.  
  29. clock = pygame.time.Clock()
  30. run = True
  31.  
  32. while run:
  33.     clock.tick(fps)  # Тикаем со скоростью fps
  34.     for i in pygame.event.get():
  35.         if i.type == pygame.QUIT:  # Если тип игрового события - это выход
  36.             run = False  # Завершаем игровой цикл
  37.  
  38.     key = pygame.key.get_pressed()
  39.     if key[pygame.K_LEFT]:          # Если нажата левая кнопка
  40.         rack_rect.x -= 10
  41.     if key[pygame.K_RIGHT]:         # Если нажата правая кнопка
  42.         rack_rect.x += 10
  43.  
  44.     pic_rect.x += speedx
  45.     pic_rect.y += speedy
  46.  
  47.     if pic_rect.bottom >= height:     # Отскок от нижней границы
  48.         run = False
  49.         print('Game Over!')
  50.  
  51.     if pic_rect.top <= 0:            # Отскок от верхней границы
  52.         speedy = -speedy
  53.  
  54.     if pic_rect.right >= width:     # Отскок от правой границы
  55.         speedx = -speedx
  56.  
  57.     if pic_rect.left <= 0:          # отскок от левой границы экрана
  58.         speedx = -speedx
  59.  
  60.     if pic_rect.colliderect(rack_rect):   # отскок от ракетки
  61.         speedy = -speedy
  62.  
  63.  
  64.     screen.fill(cyan)                # Заливаем экран цветом
  65.     screen.blit(pic, pic_rect)       # Отрисовываем спрайт с его рамкой
  66.     screen.blit(rack, rack_rect)     # Отрисовываем ракетку
  67.     pygame.display.update()          # Обновляем экран
  68.  
  69. pygame.quit()
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement