Skip to content

dogloving/FlyFrog

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FlyFrog

sometimes naive

简介:这是一个类似于flybird 的小游戏,由本人使用pygame独立开发,没有参考任何已有代码。玩法十分简单,只需点击鼠标就行。同时支持多种模式的玩法,包括简单、普通、困难额和炼狱四种难度模式。注意需要先安装pygame模块

程序模块及实现方法:

(1) 输入玩家昵称:需要在控制台中进行; 用input()函数即可。

(2) 游戏简介:显示游戏玩法,同时还有START按钮 使用了系统的arial字体;按钮就是一张图片,点击按钮就是按下鼠标同时鼠标位置在对应区域内

(3) 选择模式:共有四种模式,玩家任选一种; 将四张图片放在屏幕上合适的位置,同时获取鼠标点击位置,如果在对应图片位置就开始游戏。

(4) 开始游戏:根据上一模块选择的模式生成不同的难度,撞到障碍物就算失败; 对于flyfrog的控制:默认速度是向下的,但是按下鼠标左键就将速度反向,松开后速度重新变成原来的方向;右键是加快flyfrog下落速度的,每次按下时y方向坐标加上适当的数。 对于障碍物:总共有两对障碍物,是随机生成的(图片库中有很多对障碍物,他们长度相加是相同的),两者相隔一半的屏幕宽度,它们有一定的移动速度,随着时间的变化它们的x坐标不断变化,当到达屏幕边缘时该障碍物x坐标重新回到起始处;同时随着时间变化,障碍物移动速度也是不断加快。 难度控制:不同的难度,flyfrog、障碍物的初速度、加速度都是不同的,难度越高,初速度和加速度越大。而且难度大的会有背景图干扰。 计分:每有一对障碍物到达边界表示flyfrog成功通过这一对障碍物的考验,然后根据难度不同加上对应的分数。 判断死亡:当flyfrog区域坐标与障碍物区域坐标有重合时即判断死亡,具体算法是先将flyfrog的上坐标与与上障碍物的下坐标对比并且将flyfrog的下坐标与下障碍物的上坐标对比,如果有重合就进行进一步的对比:如果障碍物左坐标在[x_frog,x_frog+width_frog]中(其中x_frog表示flyfrog左坐标,width_frog表示flyfrog的宽度),那么死亡,否则继续。 背景音乐:当选择了模式之后会导入不同的音乐;死亡时有神秘音乐。

(5) 排行榜:如果进入前10会在榜单中用特殊颜色显示,否则会输出”Keep up”字样; 新建一个列表,从文件中读取历史信息到列表中,添加最新成绩到列表中;对列表进行排序取前10,输出列表信息。

Releases

No releases published

Packages

No packages published

Languages