更新 'Alien_Invasion.py'
This commit is contained in:
parent
2252521826
commit
9e72d2db22
|
@ -55,6 +55,28 @@ class AlienInvasion: # 管理游戏资源和行为的类11
|
||||||
available_space_x = self.settings.screen_width - (2 * alien_width)
|
available_space_x = self.settings.screen_width - (2 * alien_width)
|
||||||
number_aliens_x = available_space_x // (2 * alien_width)
|
number_aliens_x = available_space_x // (2 * alien_width)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# 计算屏幕可容纳多少行外星人
|
||||||
|
ship_height = self.ship.rect.height
|
||||||
|
available_space_y = (self.settings.screen_height -
|
||||||
|
(3 * alien_height) - ship_height)
|
||||||
|
number_rows = available_space_y // (2 * alien_height)
|
||||||
|
|
||||||
|
# 创建外星人群
|
||||||
|
for row_number in range(number_rows):
|
||||||
|
for alien_number in range(number_aliens_x):
|
||||||
|
self._create_alien(alien_number, row_number)
|
||||||
|
|
||||||
|
def _create_alien(self, alien_number, row_number):
|
||||||
|
"""创建一个外星人并将其放在当前行"""
|
||||||
|
alien = Alien(self)
|
||||||
|
alien_width,alien_height = alien.rect.size
|
||||||
|
alien.x = alien_width + 2 * alien_width * alien_number
|
||||||
|
alien.rect.x = alien.x
|
||||||
|
alien.rect.y = alien.rect.height + 2 * alien.rect.height * row_number
|
||||||
|
self.aliens.add(alien)
|
||||||
|
|
||||||
def run_game(self): # 开始游戏主循环
|
def run_game(self): # 开始游戏主循环
|
||||||
while True:
|
while True:
|
||||||
self._check_events()
|
self._check_events()
|
||||||
|
|
Loading…
Reference in New Issue