Alien_invasion/bullet/bullet.py

27 lines
931 B
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import pygame
from pygame.sprite import Sprite
class Bullet(Sprite):
def __init__(self, ai_settings, screen, ship):
# 在飞船所处位置创建一个子弹对象
super(Bullet, self).__init__()
self.screen = screen
# 在00处创建一个表示子弹的矩形再设置正确的位置
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
self.rect.y = self.y
# 在屏幕上绘制子弹
def draw_bullet(self):
pygame.draw.rect(self.screen, self.color, self.rect)