玩玩pygame

1、pygame历史

Pygame是跨平台Python模块,专为电子游戏设计,包含图像、声音。建立在SDL基础上,允许实时电子游戏研发而无需被低级语言(如机器语言和汇编语言)束缚。 就产品而言Pygame更致力于2D游戏的开发。

2、安装pygame

可以从www.pygame.org 下载Pygame,选择合适你的操作系统和合适的版本,然后安装就可以了,安装完之后引入模块


>>>import pygame
>>>print pygame.ver

3、使用pygame

Pygame有很多的模块,下面是一张一览表:

image
image

有些模块可能在某些平台上不存在,你可以用None来测试一下。

if pygame.font is None:    
    print "The font module is not available!"    
    exit()

4、玩玩pygame

4.1-- 游戏程序结构分析

1. 构建模块文件

(1) .外星人群 --alien模块

(2).飞船--ship模块

(3).子弹--bullet模块

如果我们给其加上管理设置的类,用来封装一些设置,如游戏背景颜色,子弹最大数量,子弹移动速度,僵尸移动速度等等细节的封装类所以我们建立设置模块:

(4).设置 --settings模块

当我们对游戏进行操作的时候,pygame模块捕获我们的动作,键盘,鼠标,按下,抬起,屏幕的绘制等等,操作有关的东西,我们可以单独再写一个模块,尽量减少程序的耦合是一个需要掌握的技能和聪明的做法.

(5)游戏使用函数--game_functions模块

游戏从何开始从何结束,怎么样算是失败,怎么样算是通关,一共有多少条生命,怎么样式GAME OVER 所以我们要思考建立一个模块来进行封装

(6)状态--game_stats模块

2. 功能

  • 飞船:左右移动、射击外星人
  • 外星人:上下左右移动、生成外星人
  • 当飞船全部射杀完外星人就晋级,当外星人碰到飞船或者碰到底部就损失一艘飞船
  • 开始play按钮
  • 得分,最高分,等级

3.一些总结

游戏的主循环是一个无限循环,直到用户跳出。在这个主循环里做的事情就是不停地画背景和更新光标位置,虽然背景是不动的,我们还是需要每次都画它, 否则鼠标覆盖过的位置就不能恢复正常了。

blit是个重要函数,第一个参数为一个Surface对象,第二个为左上角位置。画完以后一定记得用update更新一下,否则画面一片漆黑。

最后,附上成果图(UI随便找的图,不要嫌弃o(╯□╰)o)

image

你可能感兴趣的:(玩玩pygame)