def create_alien(setting, screen, aliens, alien_num, row_num, ship): alien = Alien(setting, screen) alien_width = alien.rect.width alien.x = alien_width + 2 * alien_width * alien_num alien.rect.x = alien.x alien.rect.y = alien.rect.height + 2 * alien.rect.height * row_num + ship.rect.height aliens.add(alien)
def create_alien(alien_number, alien_width, aliens, screen, setting, row_number): alien = Alien(setting, screen) 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 aliens.add(alien)
def create_alien_row(screen, ai_settings, aliens, alien_number, rows_number): alien = Alien(screen, ai_settings) alien_width = alien.rect.width alien.x = alien_width + 2 * alien_width * alien_number alien.rect.x = alien.x alien.rect.y = alien.rect.height + 2 * alien.rect.height * rows_number aliens.add(alien)
def create_alien(ai_settings, screen, aliens, alien_number, row_number): """Create an alien and place it in the row of aliens.""" alien = Alien(ai_settings, screen) alien_width = alien.rect.width 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 aliens.add(alien)
def create_alien(settings, screen, aliens, alien_number, row_number): """Instantiate an alien and place it in row""" alien = Alien(settings, screen) # Define attributes alien_w = alien.rect.width # Use alien_number in position calculation alien.x = alien_w + 2 * alien_w * alien_number alien.rect.x = alien.x alien.rect.y = alien.rect.height + 2 * alien.rect.height * row_number aliens.add(alien)
def create_fleet(settings, screen, aliens): alien = Alien(settings, screen) alien_width = alien.rect.width available_space_width = settings.screen_width - (2 * alien_width) number_aliens = int(available_space_width / (alien_width * 2)) for alien_number in range(number_aliens): alien = Alien(settings, screen) alien.x = alien_width + 2 * alien_width * alien_number alien.rect.x = alien.x aliens.add(alien)
def create_fleet(setting, screen, ship, aliens): alien = Alien(setting, screen) alien_width = alien.rect.width alien_num_x = get_num_aliens_x(setting, screen, alien_width) num_rows = get_aliens_row_num(setting, ship.rect.height, alien.rect.height) for row_num in range(num_rows): for alien_num in range(alien_num_x): create_alien(setting, screen, aliens, alien_num, row_num, ship)
def create_fleet(setting, screen, aliens, ship): alien = Alien(setting, screen) number_aliens_x = get_number_aliens_x(alien.rect.width, setting) number_rows = get_number_rows(setting, ship.rect.height, alien.rect.height) for row_number in range(number_rows): for alien_number in range(number_aliens_x): create_alien(alien_number, alien.rect.width, aliens, screen, setting, row_number)
def create_fleet(settings, screen, ship, aliens): """Create a fleet of aliens""" alien = Alien(settings, screen) number_aliens_x = get_number_aliens_x(settings, alien.rect.width) number_rows = get_number_rows(settings, ship.rect.height, alien.rect.height) # Create fleet of aliens for row_number in range(number_rows): for alien_number in range(number_aliens_x): create_alien(settings, screen, aliens, alien_number, row_number)
def create_fleet(ai_settings, screen, ship, aliens): """Utworzenie pelnej floty obcych""" alien = Alien(screen, ai_settings) number_aliens_x = get_number_aliens_x(ai_settings, alien.rect.width) rows_number = get_number_free_rows(ai_settings, ship.rect.height, alien.rect.height) # Utworzenie pierwszego rzedu obcych for row_number in range(rows_number): for alien_number in range(number_aliens_x): create_alien_row(screen, ai_settings, aliens, alien_number, row_number)
def create_fleet(ai_settings, screen, ship, aliens): """Create a full fleet of aliens.""" # Create an alien and find the number of aliens in a row. alien = Alien(ai_settings, screen) number_aliens_x = get_number_aliens_x(ai_settings, alien.rect.width) number_rows = get_number_rows(ai_settings, ship.rect.height, alien.rect.height) # Create the fleet of aliens. for row_number in range(number_rows): for alien_number in range(number_aliens_x): create_alien(ai_settings, screen, aliens, alien_number, row_number)
def run_game(): screen = init_pygame() # 创建飞船 ship = Ship(screen, setting) # 存储子弹的编组 bullets = Group() # alien alien = Alien(setting, screen) while True: # 点击按键之后不动使飞机能够一直移动 gf.check_events_keepMove(ship, setting, bullets, screen) ship.update() # bullet位置变动 gf.update_bullet(bullets) # 打印当前在 Group - Bullets 中的有效弹药 # print(len(bullets)) gf.update_screen(setting, screen, ship, bullets, alien)
def get_num_aliens_x(setting, screen, alien_width): alien = Alien(setting, screen) alien_width = alien.rect.width alien_space_x = setting.screen_width - 2 * alien_width alien_num_x = int(alien_space_x / (2 * alien_width)) return alien_num_x