1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/ximy-alien

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
bullet.py 1.4 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
zhangjialin Отправлено 03.01.2021 16:46 026e3a7
import pygame
from pygame.sprite import Sprite
# 继承pygame中的sprite类,通过使用精灵,可将游戏中相关的元素进行编组,进而同进管理所有元素
class Bullet(Sprite):
"""一个对飞船发射的子弹进行管理的类"""
def __init__(self, ai_settings, screen, ship):
"""在飞船所处的位置创建一个子弹对象"""
# python2的写法,super(子类名,self).__init__(参数列表)
# super(Bullet, self).__init__()
# python3的写法
super().__init__()
self.screen = screen
# 在(0, 0)处创建一个表示子弹的矩形,再设置正确的位置
self.rect = pygame.Rect(0, 0, ai_settings.bullet_width,
ai_settings.bullet_height)
self.rect.centerx = ship.rect.centerx
self.rect.top = ship.rect.top
# 存储用小数表示的子弹位置
self.y = float(self.rect.y)
self.color = ai_settings.bullet_color
self.speed_factor = ai_settings.bullet_speed_factor
def update(self):
"""向上移动子弹"""
# 更新表示子弹位置的小数值
self.y -= self.speed_factor
# 更新表示子弹的rect的位置
self.rect.y = self.y
def draw_bullet(self):
"""在屏幕上绘制子弹"""
pygame.draw.rect(self.screen, self.color, self.rect)

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/ximy-alien.git
git@api.gitlife.ru:oschina-mirror/ximy-alien.git
oschina-mirror
ximy-alien
ximy-alien
master