Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Срочно помогите с пайтоном

негр абортович Ученик (109), на голосовании 3 недели назад
Pygame: Арканоид

Создай персонажей игры (мяч, платформу и монстров) и отобрази их на игровой сцене, залитой цветом. Для этого:

1. Подключи игровую библиотеку Pygame.
2. Создай окно игры размером 500x500, дай ему название.
3. Создай игровой цикл с выходом при нажатии на «Завершить работу».
4. Задай FPS 40 кадров/сек.
5. Скопируй класс Area из прошлого проекта.
6. Создай класс Picture как наследника Area. Дополни его свойством-картиной и методом draw(), отображающим спрайт.
7. Создай и отобрази спрайты: мяч, платформу.
8. Создай список из 24 монстров. Продумай их отрисовку на сцене.
9. Отобрази всех монстров на игровой сцене.
Голосование за лучший ответ
Linard Plukis Профи (559) 1 месяц назад
 import pygame 
import random

# инициализация pygame
pygame.init() # начнем

# настройки окна
WIDTH, HEIGHT = 500, 500
window = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("арканоид") # название окна

# настройки fps
FPS = 40
clock = pygame.time.Clock() # таймер

# цвета
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
RED = (255, 0, 0)
GREEN = (0, 255, 0)
BLUE = (0, 0, 255) # основные цвета

# класс area
class Area:
def __init__(self, x, y, width, height):
self.rect = pygame.Rect(x, y, width, height) # прямоугольник

# класс picture
class Picture(Area):
def __init__(self, x, y, width, height, color):
super().__init__(x, y, width, height)
self.color = color # цвет

def draw(self, surface):
pygame.draw.rect(surface, self.color, self.rect) # рисуем

# создание объектов
ball = Picture(250, 250, 20, 20, BLUE) # мяч
platform = Picture(200, 450, 100, 20, GREEN) # платформа

# список монстров
monsters = [] # создаем список
for _ in range(24): # 24 монстра
x = random.randint(0, WIDTH - 40) # случайная позиция по x
y = random.randint(0, HEIGHT // 2) # верхняя половина экрана
monsters.append(Picture(x, y, 40, 20, RED)) # красные монстры

# игровой цикл
running = True # флаг для цикла
while running:
for event in pygame.event.get(): # обработка событий
if event.type == pygame.QUIT: # выход
running = False

# заполнение фона
window.fill(WHITE) # белый фон

# отрисовка объектов
ball.draw(window) # мяч
platform.draw(window) # платформа
for monster in monsters: # отрисовка монстров
monster.draw(window)

pygame.display.flip() # обновляем экран
clock.tick(FPS) # fps

# завершение работы pygame
pygame.quit() # прощай
Похожие вопросы