diff --git a/bullet.py b/bullet.py index 8c65fb7..f881020 100644 --- a/bullet.py +++ b/bullet.py @@ -22,22 +22,30 @@ class Bullet(Sprite): 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 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) + def draw_bullet(self): + """在屏幕上绘制子弹""" + pygame.draw.rect(self.screen, self.color, self.rect) - class BossBullet(Sprite): - """Boss发射的子弹""" +class BossBullet(Sprite): + """Boss发射的子弹""" - def __init__(self, ai_settings, screen, bossalien): - """在飞船所处的位置创建一个子弹对象""" - super(BossBullet, self).__init__() - self.screen = screen \ No newline at end of file + def __init__(self, ai_settings, screen, bossalien): + """在飞船所处的位置创建一个子弹对象""" + super(BossBullet, self).__init__() + self.screen = screen + + # 在boss底部中央处创建一个表示子弹的矩形,再设置正确的位置 + self.rect = pygame.Rect(0, 0, ai_settings.bossbullet_width, + ai_settings.bossbullet_height) + self.rect.x = bossalien.x + self.rect.y = bossalien.rect.bottom + self.width = ai_settings.bossbullet_width + self.height = ai_settings.bossbullet_height \ No newline at end of file