while running:
# 设置游戏帧率为 60
clock.tick(60)
if not is_pause and not is_game_over:
if not player.is_hit:
# 设置连续射击,因为每秒 60 帧,15/60=0.25 秒发一次子弹
if shoot_frequency % 15 == 0:
player.shoot(bullet_img)
shoot_frequency += 1
# 当设置的射击频率大于 15,置零
if shoot_frequency >= 15:
shoot_frequency = 0
# 控制生成敌机的频率
if enemy_frequency % 50 == 0:
# 设置敌机的出现的位置
enemy_pos = [random.randint(0, SCREEN_WIDTH - enemy_rect.width), 0]
enemy = Enemy(enemy_img, enemy_explosion_imgs, enemy_pos)
enemies.add(enemy)
enemy_frequency += 1
if enemy_frequency >= 100:
enemy_frequency = 0
# 控制子弹的显示运行
for bullet in player.bullets:
bullet.move()
if bullet.rect.bottom < 0:
player.bullets.remove(bullet)