博客
关于我
用Python做个美少女大战小怪兽
阅读量:161 次
发布时间:2019-02-27

本文共 1195 字,大约阅读时间需要 3 分钟。

640?wx_fmt=jpeg

对于飞机大战,想必大家都一定不会陌生,但是对于美少女大战小怪兽呢,大家是否玩过呢,
今天小编就带领大家从头开始,制作一个《美少女大战小怪兽》的初级版。之所以是叫初级版是因为这个游戏只是实现了最为简单的功能,后续的大家还可以继续添加。

640

1

游戏的界面设计

本次游戏的编写是基于pygame函数库进行的,首先我们来看一下游戏的界面,当我们运行程序后,会先弹出来一个前言界面,简单的提示我们应该如何玩这个游戏,然后我们便进入了游戏的主界面,如下图所示:

640?wx_fmt=png

640

2

整个游戏的角色,场景设计

接下来就是面对整个游戏的角色,场景设计了,游戏的设计主要分为四个部分,分别是四个类,
对应着怪兽、美少女战士、子弹和整个的游戏。

我们挑选出一个类的函数来为大家稍作解释,作为面向对象的编程,怪兽应该有什么属性和动作呢,针对于这个游戏,小编想到它的属性有位置,速度,是否存活已经剩余的血量,外加被破坏时的样子,而他的动作无非就是上下方向的运动。这样一来,一个清晰的怪物形象就展现在大家的面前,怪兽类的程序如下图所示:

640?wx_fmt=png

上图的程序中,小编按照上面我们所描述的定义了怪兽的血量、位置等属性,并定义了其运动的函数。其他的例如子弹和美少女战士都是按照类似的思想去设计,大家可以对照源码去理解,这对于锻炼大家面向对象编程能力的提高很有帮助。

640

3

整个游戏的逻辑设计

然后就是整个游戏的逻辑编写了。这也是将各个对象整合到一起的关键点。在游戏类的初始化定义里,如下图所示:

640

小编定义了游戏界面的带线啊哦,游戏界面的题目以及背景图画等信息,并实例化了美少女战士、怪兽和子弹。
游戏的主逻辑是这样的,当我们运行程序后,pygame通过监测键盘的按键来判断玩家对于美少女战士的移动方向,与此同时,子弹被不断的发射出去,程序如下图所示:

640

当子弹打中怪兽时,此时子弹就失去了生命,同时怪兽也失去了生命,他们都被丢弃掉了,然后怪兽和子弹便被重置,我们的得分会加1000分,如果怪兽打中了美少女战士,那么怪兽和美少女战士都被重置。

同时玩家的生命值也会减1。我们不断完成这些逻辑判断的同时,pygame也不断的将子弹、怪兽和美少女战士画到界面上来,就构成了我们的一次循环。

当我们完成上面的操作后,程序便会不断的再进入这个循环当中来,直到玩家的生命值变为0时,此时,便会出现下图的界面。

640?wx_fmt=png

程序会告诉我们的得分情况,然后提示我们是否要重新来一局还是直接退出该游戏。如果我们选择重新再来一局的话,那么程序便会像我们前面所讲的那样,重新进入循环执行,直到我们想退出游戏。

以上就是小编带领大家对于游戏的梳理,下面就让小编为大家带来展示吧,为了增加游戏的体验,小编还特地为该游戏找到了不错的配音,如果大家觉得配音不喜欢的话,可以自己选择自己喜欢的配音进行更改即可。

完整的视频

先睹为快

需要源码,请后台输入:【小助手】,暗号美少女

更多有趣有用文章

640?wx_fmt=png

转载地址:http://qqsd.baihongyu.com/

你可能感兴趣的文章
Nerves 项目教程
查看>>
nessus快速安装使用指南(非常详细)零基础入门到精通,收藏这一篇就够了
查看>>
Nessus漏洞扫描教程之配置Nessus
查看>>
Nest.js 6.0.0 正式版发布,基于 TypeScript 的 Node.js 框架
查看>>
nested exception is org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML.
查看>>
nestesd exception is java .lang.NoSuchMethodError:com.goolge.common.collect
查看>>
nestJS学习
查看>>
net core 环境部署的坑
查看>>
NET Framework安装失败的麻烦
查看>>
Net 应用程序如何在32位操作系统下申请超过2G的内存
查看>>
Net.Framework概述
查看>>
NET3.0+中使软件发出声音[整理篇]<转>
查看>>
net::err_aborted 错误码 404
查看>>
NetApp凭借领先的混合云数据与服务把握数字化转型机遇
查看>>
NetAssist网络调试工具使用指南 (附NetAssist工具包)
查看>>
Netbeans 8.1启动参数配置
查看>>
NetBeans IDE8.0需要JDK1.7及以上版本
查看>>
NetBeans之JSP开发环境的搭建...
查看>>
NetBeans之改变难看的JSP脚本标签的背景色...
查看>>
netbeans生成的maven工程没有web.xml文件 如何新建
查看>>