Python版本:3.6.4函数
相关模块:工具
pygame模块;学习
以及一些Python自带的模块。开发工具
关注公众号:Python学习指南,回复“恐龙跳一跳”便可获取
安装Python并添加到环境变量,pip安装须要的相关模块便可。spa
原理介绍blog
游戏规则简介:游戏
玩家经过空格键控制一只小恐龙的前进方式,当小恐龙触碰到植物或者飞龙时,游戏结束。小恐龙躲避的植物和飞龙越多,得分越高。事件
逐步实现:图片
Step1:定义精灵类ip
为了方便实现小恐龙和植物以及飞龙之间的碰撞检测,咱们先定义一些精灵类,包括:
① 植物类
其中,move函数的做用为使随机生成的植物不断地左移,来实现小恐龙不断右移的效果。
② 飞龙类
飞龙类的定义要略微复杂一些,由于若是咱们想让飞龙飞起来更逼真一些,就必须每隔一段很小的时间,就对飞龙的状态进行转换。具体而言,飞龙的飞行状态有两种,即翅膀向上和翅膀向下:
咱们须要作的就是每隔很短的一段时间,就让飞龙的翅膀由其中一种姿式转为另一种姿式。
③ 小恐龙类
小恐龙类的定义与飞龙类相似,只不过状态要更加丰富一些,而且经过匀加速直线公式模拟恐龙的跳跃和降低的动做。
Step2:定义场景类
咱们须要定义一个简单的场景类(道路和云等场景),来使咱们的游戏效果更加逼真:
这里惟一须要注意的就是场景的左移速度应当与植物类一致(毕竟它们理论上都应当是相对静止的),而且须要三张场景图同时左移来保证画面的连续性。
Step3:游戏主循环
先初始化,内容包括加载游戏素材文件、实例化以前定义的精灵类和场景类、定义一些必要的常量和用户事件等:
而后就能够进入游戏主循环了:
主循环主要包括四个功能,一是事件检测;二是不断地产生、移动并画出相应的场景和精灵类;三是碰撞检测;四是统计并显示当前分数。
All Done!