存储项目的大部分函数

This commit is contained in:
206530219 2021-06-19 12:23:02 +08:00
parent e771eca2ba
commit df13eac3b0
1 changed files with 21 additions and 0 deletions

View File

@ -214,3 +214,24 @@ def get_number_rows(ai_settings, ship_height, alien_height):
available_space_y = (ai_settings.screen_height - (3 * alien_height) - ship_height)
number_rows = int(available_space_y / (2 * alien_height))
return number_rows
def update_aliens(ai_settings, screen, stats, sb, ship, aliens, bullets, bossalien, bossbullet):
"""
检查是否有外星人位于屏幕边缘并更新整群外星人的位置
"""
# 增加在非BOSS关卡时检查
if stats.level != stats.bosslevel:
check_fleet_edges(ai_settings, aliens)
aliens.update()
# 检查是否有外星人到达屏幕底端
check_aliens_bottom(ai_settings, screen, stats, sb, ship, aliens, bullets)
# 检测外星人和飞船之间的碰撞
if pygame.sprite.spritecollideany(ship, aliens):
ship_hit(ai_settings, screen, stats, sb, ship, aliens, bullets, bossalien, bossbullet)
else:
check_bossalien_edges(ai_settings, bossalien)
bossalien.update()