美文网首页
【python3小白上路系列】确认应运行游戏的哪些部分

【python3小白上路系列】确认应运行游戏的哪些部分

作者: Charles_DT | 来源:发表于2020-08-27 17:13 被阅读0次

在alien_invasion.py中,我们需要确定游戏的哪些部分在任何情况下都应运行,哪些部分仅在游戏处于活动状态时才运行:

    while True:
        gf.check_events(ai_settings,screen,ship,bullets)
        
        if stats.game_active:
            ship.update()
            gf.update_bullets(ai_settings,screen,ship,aliens,bullets)
            gf.update_aliens(ai_settings,stats,screen,ship,aliens,bullets)
        
        gf.update_screen(ai_settings,screen,ship,aliens,bullets)

在主循环中,在任何情况下都需要调用check_events() ,即便游戏处于非活动状态时亦如此。例如,我们需要知道玩家是否按了Q键以退出游戏,或单击关闭窗口的按钮。 我们还需要不断更新屏幕,以便在等待玩家是否选择开始新游戏时能够修改屏幕。其他的函数仅在游戏处于活动状态时才需要调用,因为游戏处于非活动状态时,我们不用更新游戏元素的位置。

现在,你运行这个游戏时,它将在飞船用完后停止不动。

2.7 小结一下

到目前为止,我们学习了:

  • 如何在游戏中添加大量相同的元素,如创建一群外星人;
  • 如何使用嵌套循环来创建元素网格,还通过调用每个元素的方法update() 移动了大量的元素; - 如何控制对象在屏幕上移动的方向,以及如何响应事件,如有外星人到达屏幕边缘;
  • 如何检测和响应子弹和外星人碰撞以及外星人和飞船碰撞;
  • 如何在游戏中跟踪统计信息,以及如何使用标志game_active 来判断游戏是否结束了。

下一章开始补充游戏的记分系统,冲鸭。

相关文章

网友评论

      本文标题:【python3小白上路系列】确认应运行游戏的哪些部分

      本文链接:https://www.haomeiwen.com/subject/rjfcsktx.html