Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [pygame.py]
- import pygame, controls
- import sys
- from spacecraft import Spacecraft
- from pygame.sprite import Group
- def run():
- # команда инициализации игры
- pygame.init()
- # Отображаемая област, где будут все графические элементы игры
- screen = pygame.display.set_mode((700, 750))
- # Заголовок для графической окна
- pygame.display.set_caption("Инопланетный взрыв")
- # Фоновый цвет для дисплея в RGB
- bg_color = (102, 102, 102)
- # Отрисовка корабля на экране
- spacecraft = Spacecraft(screen)
- # Создание контейнера с пулями
- bullets = Group()
- # Главный цикл игры
- while True:
- # Вызвать из файла controls функцию events
- controls.events(screen, bullets, spacecraft)
- # Вызвать из файла spacecraft функцию логической переменной
- spacecraft.update_spacecraft()
- # Вызвать из файла bullet функцию update
- bullets.update()
- # Вызвать из файла controls функцию update
- controls.update(bg_color, screen, spacecraft, bullets)
- run()
- [bullet.py]
- import pygame
- class Bullet(pygame.sprite.Sprite):
- def __init__(self, screen, spacecraft):
- """Создание пули в текущей позиции корабля"""
- # У pygame есть class Sprite, class Bullet обращается к class Sprite. Чтобы обрать к class Sprite без ввода
- # кодов на инициализацию пули, super(Bullet(Sprite))
- super(Bullet, self).__init__()
- # Загрузка экрана, где будут создаваться пули
- self.screen = screen
- # Отрисовка прямоугольника pygame.rect([координата X], [координата Y],[Ширина {pixel}], [Высота {pixel}])
- self.rect = pygame.Rect(0, 0, 2, 12)
- self.color = 178,34,34
- self.speed = 1.5
- # Пуля должна появляться в верхней части корабли
- self.rect.centerx = spacecraft.rect.centerx
- self.rect.top = spacecraft.rect.top
- # Координата по Y
- self.y = float(self.rect.y)
- def update(self):
- """Пермещение пули вверх"""
- # Координата Y будет уменьшаться на заданную скорость
- self.y -= self.speed
- # Обновление позиции прямоугольника
- self.rect.y = self.y
- def draw_bullet(self):
- """Рисуем пулю на экране"""
- pygame.draw.rect(self.screen, self.color, self.rect)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement