暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Python飞机大战

Itbestboy 2021-06-28
1507


1、需求分析

1.1 系统总体分析

     整个系统的使用简单易懂,系统采用GUI布局使得界面拥有比较友好的交互,同时本软件是基于 windows 系统的开发的一款娱乐软件,它包含普通玩家与敌机两种类型并且整个系统的运行配置要求也很低,基本运行环境要求:

1.开发工具 Pychame

1.2 游戏设置分析

      该软件主要设置背景音乐开关及声音大小,游戏功能:实现飞机移动、发射子弹、多条生命、碰撞检测、敌机血量检测、事件监听、发放补给包等功能以及设置游戏规则。

2、功能分析

2.1 功能描述

根据游戏的需求一共分为三个模块,分别是背景音乐模块、游戏设置模块和精灵模块。

1)背景音乐模块的功能主要是添加背景音乐,使游戏的更加灵活增加用户良好的体验感。背景音乐用例图下图所示:



2)游戏设置模块的功能主要是实现飞机移动、发射子弹、多条生命、碰撞检测、敌机血量检测、事件监听、发放补给包等功能以及设置游戏规则。



3)精灵模块的功能主要是设置分值奖励,游戏面板恢复和保存成绩,精灵用例图下图所示:

2.2   总体功能 

    本次设计的游戏包含了背景音乐模块、游戏设置模块以及精灵模块,然后根据背景音乐模块、游戏设置模块以及精灵模块这三个模块的功能分析,主要由以下几个功能:

3、详细设计

3.1 背景设置

   整个游戏窗口显示的是一张以星空图片(background.png)为背景的动态图像,当用户启动游戏时,背景图缓缓向下移动,给用户一种自己操作的飞机向上移动的错觉。

3.2 界面设置

1)游戏窗口中间靠下的位置显示自己的飞机,也就是我们自己操作的飞机(上下左右键),可以发射子弹、引爆炸弹以及夺取补给。

2)游戏窗口右下角显示×3,用来指示自己飞机的生命,当每夺取蓝色空投包时,增加一条生命,如果生命值不足时则显示0,初始状态下玩家有三条生命。

3)游戏窗口左下角显示×3,用来指示自己所拥有的炸弹数量,当每夺取红色空投包时,增加一个炸弹,按下B键可以使整个窗口内的所有敌机爆炸,如果炸弹数量不足时则显示0,初始状态下玩家携带3个炸弹。

4)游戏窗口左上角有一个开始暂停键,用于控制游戏的状态,同时在暂停键旁边有设置一个显示玩家的分数。当玩家按下空格键,游戏暂停,整个画面处于静止状态同时背景音乐也暂停,当玩家再次按下空格键时,游戏从当前状态启动,继续游戏。

5)当玩家生命值用尽时,界面中央就会显示“Game Over”的文字。Game Over下面会显示用户的最分数的最高得分,玩家可以对比左上角的得分查看自己当前的得分以及是否打破记录。

3.3  玩家飞机设置

1)飞机控制:玩家可以通过键盘上的方向键(↑↓← →)控制飞机的方向。当游戏开始的前3秒之内,玩家处于无敌状态,即在这三秒之内任何敌机都不会撞毁自己。

2)玩家飞机出场后,每个0.2秒就会自动连续发射3颗子弹,当获取道具后会变成两行子弹。

3)玩家飞机的属性可以总结为如下表所示:

4)子弹的属性可以总结为如下表所示:

3.4 敌机设置

 1)在这个飞机大战中敌机一共分3种类型,分别是小型敌机、中型敌机和大型敌机,并且击中每种飞机的分值也不同。

2)游戏开始后,敌机可以从任意位置出现,如果飞行途中遇玩家的飞机相撞,就播放撞毁音效,同时敌机毁坏,玩家飞机丧失一条生命。

3)如果敌机飞机和玩家飞机没有相撞,而是被玩家飞机击中,则敌机的生命值减去相应的子弹伤害。如果敌机生命值还有,显示被击中图片但是可以继续向前飞行。如果敌机的生命值没有了就显示被击毁的音效和图片。具体属性如下表所示:

3.5 关卡设置

     该游戏根据玩家的得分逐步增加难度,一共设立三个关卡,增加玩家的体验。具体设置如下表所示:

3.6 奖励设置

玩家飞机每得到100000分会被奖励1条生命,并且每个30秒会开始释放道具,具体如下表所示:

4、运行效果

      整个游戏窗口显示的是一张以星空为背景的动态图像,当用户启动游戏时,背景图缓缓向下移动,给用户一种自己操作的飞机向上移动的错觉。如图所示:

       当游戏开始后玩家就可以攻击敌机,敌机一旦被击中就会坠毁或者当敌机和玩家的飞机相撞时也会坠毁,同时玩家的飞机失去一条生命,运行如图所示

    当30秒之后在游戏中就会出现相应的道具玩家飞机通过获取道具可以增加炸弹数和增加生命值,当玩家的分数达到一定时,就会进入下一个关卡,进行关卡升级,如图所示:

文章转载自Itbestboy,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论