上传文件至 ''
This commit is contained in:
parent
af2dccbf55
commit
81c60ea4dc
|
@ -34,18 +34,18 @@ def run_game():
|
|||
|
||||
# 开始游戏主循环
|
||||
while True:
|
||||
# 监视键盘和鼠标事件
|
||||
gf.check_events(ai_settings, screen, stats, sb, play_button, ship, aliens, bullets)
|
||||
# 监视键盘和鼠标事件
|
||||
gf.check_events(ai_settings, screen, stats, sb, play_button, ship, aliens, bullets)
|
||||
|
||||
if stats.game_active:
|
||||
# 移动飞船
|
||||
gf.update_ship(ship)
|
||||
# 更新子弹位置
|
||||
gf.update_bullets(ai_settings, screen, stats, sb, ship, aliens, bullets)
|
||||
# 更新外星人
|
||||
gf.update_aliens(ai_settings, stats, screen, sb, ship, aliens, bullets)
|
||||
# 更新屏幕
|
||||
gf.update_screen(ai_settings, screen, stats, sb, ship, aliens, bullets, play_button)
|
||||
if stats.game_active:
|
||||
# 移动飞船
|
||||
gf.update_ship(ship)
|
||||
# 更新子弹位置
|
||||
gf.update_bullets(ai_settings, screen, stats, sb, ship, aliens, bullets)
|
||||
# 更新外星人
|
||||
gf.update_aliens(ai_settings, stats, screen, sb, ship, aliens, bullets)
|
||||
# 更新屏幕
|
||||
gf.update_screen(ai_settings, screen, stats, sb, ship, aliens, bullets, play_button)
|
||||
|
||||
|
||||
run_game()
|
35
bullet.py
35
bullet.py
|
@ -2,30 +2,33 @@ import pygame
|
|||
from pygame.sprite import Sprite
|
||||
import time
|
||||
|
||||
|
||||
class Bullet(Sprite):
|
||||
'''飞船子弹进行管理'''
|
||||
|
||||
def __init__(self,ai_settings,screen,ship):
|
||||
super(Bullet,self).__init__()
|
||||
self.screen = screen
|
||||
def __init__(self, ai_settings, screen, ship):
|
||||
super(Bullet, self).__init__()
|
||||
|
||||
# 创建子弹矩形初始位置(0,0,3,15)分别对应lef,top,宽,高
|
||||
self.rect = pygame.Rect(0,0,
|
||||
ai_settings.bullet_width, ai_settings.bullet_height)
|
||||
self.screen = screen
|
||||
|
||||
self.rect.centerx = ship.rect.centerx # 设置中心点x轴坐标跟飞船一致
|
||||
self.rect.top = ship.rect.top # 设置y轴坐标顶部跟飞船一致
|
||||
# 创建子弹矩形初始位置(0,0,3,15)分别对应lef,top,宽,高
|
||||
self.rect = pygame.Rect(0, 0,
|
||||
ai_settings.bullet_width, ai_settings.bullet_height)
|
||||
|
||||
# 设置成小数进行计算
|
||||
self.top = float(self.rect.top)
|
||||
self.rect.centerx = ship.rect.centerx # 设置中心点x轴坐标跟飞船一致
|
||||
self.rect.top = ship.rect.top # 设置y轴坐标顶部跟飞船一致
|
||||
|
||||
self.color = ai_settings.bullet_color
|
||||
self.speed_factor = ai_settings.bullet_speed_factor
|
||||
# 设置成小数进行计算
|
||||
self.top = float(self.rect.top)
|
||||
|
||||
self.color = ai_settings.bullet_color
|
||||
self.speed_factor = ai_settings.bullet_speed_factor
|
||||
|
||||
def update(self):
|
||||
self.top -=self.speed_factor
|
||||
self.rect.top = self.top
|
||||
print(self.rect.top)
|
||||
self.top -= self.speed_factor
|
||||
|
||||
self.rect.top = self.top
|
||||
print(self.rect.top)
|
||||
|
||||
def draw_bullet(self):
|
||||
pygame.draw.rect(self.screen,self.color,self.rect)
|
||||
pygame.draw.rect(self.screen, self.color, self.rect)
|
Loading…
Reference in New Issue