| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 游戏开发 -> 奇思妙想之超级魔改版外星人入侵小游戏-01 -> 正文阅读 |
|
[游戏开发]奇思妙想之超级魔改版外星人入侵小游戏-01 |
目录 很多朋友都是从python编程:从入门到实践开始的python学习,这本书还是比较适合初学者的。 而在这本书中有一个pygame小游戏项目,外星人入侵。 对于初学者来说,从小游戏入手去学python是个很不错的选择,然而我觉得此书中的外星人入侵小游戏太过单调和粗糙,所以灵光一闪决定将其升级为超级魔改版。 本文先按照此书给出该游戏的原始1.0版本和原始1.0版本完整代码,然后然后逐步分析并将其魔改为全新版本。 比起单调无趣的原始版本,魔改版除了基本玩法还是个射击游戏,几乎看不出来和原始版本有什么关系。 一、原始版本再现原始1.0版本: 原始1.0版本有如下特点: 1.玩家可以控制屏幕底下的炮口(书中说是飞船)左右移动并射击僵尸 2.僵尸群固定3排,固定数量,固定间距生成,不会随着关卡升级而变化 3.玩家有3条生命,左上角代表剩余生命,被僵尸群碰到或尸群到达屏幕底部则生命-1 4.玩家每次射击都要按一下射击键(这里是空格),不能连续射击 5.尸群作为一个整体左右移动碰到屏幕边缘便前进一步,如果不能及时消灭尸群最边缘的僵尸,那么尸群将会移动得很快 6.只有一种怪物,而且怪物没有设置血量,关卡升级只是怪物左右横移变快 7.玩法单调,没有特效,没有技能,没有道具,没有地图 8.不能实现分数存储,每次运行程序时的最高分记录不会保存 只能说原始1.0版本实现了一个小游戏的基本框架,如下图: 此时左上角有3个大炮的图标,意为我还有3条生命。 屏幕上方中央是最高分,屏幕最右上角是当前分数,由于这是运行程序后的第一次游戏,当前分即最高分。 屏幕最右上角当前分数的下面的数字是当前关卡,消灭全部僵尸进入下一关,随着关卡的升级尸群的移动速度会越来越快。 被僵尸群碰到或尸群到达屏幕底部则生命会减一哦,上图就只剩下2条命了。 原始1.0版本要用到的文件如下: ? ? ? 其中分门别类,各文件都有其明确分工,alien是专门写外星人的,alien_invasion是主程序,bullet是控制子弹及相关参数的,button是控制开始游戏按钮,game_stats是游戏的一些初始化设置,scoreboard是控制分数面板,settings用于游戏参数设置,ship专门控制飞船。 ? ? ? 原始1.0版本要用到的图片也非常简单,存在images里面,只有一个外星人和一个飞船,这里我用的是一个僵尸和一个大炮。你也可以选用自己喜欢的形象替换。 原始1.0版本的源码免费获取地址:https://download.csdn.net/download/x978404178/20299596?spm=1001.2014.3001.5501? 二、魔改思路本文将初步推出魔改后的版本,不妨记为魔改2.0版。 1.醒目亮眼的UI界面通过精心设计的登录封面,游戏取名星际前线,并达到如下效果: ?此登录界面支持鼠标点击开始游戏按钮即开始游戏,鼠标点击或按下键盘s键可进入/退出积分商城,鼠标点击联系我们可以看到作者信息。 部分代码:
2.实现地图,怪物,血量多样化所有怪物生成数量与关卡有关,生成数量在一定限度内随机,但关卡越高,生成数量趋向于越多。 怪物生成范围也为一定限度内随机生成。 怪物移动速度与关卡有关,关卡越高,前进速度越快,但设置了一个速度上限。 怪物以一定概率在一个身位内瞬移移动,可以闪避飞船的子弹。 第一关是可爱的小机器人,1点血量,在第三关出现了手拿盾牌的机器人,3点血量。 在第5关出现了BOSS,上方是它的红色血条,很长。 BOSS嘛,不抗揍怎么当老大? 我在游戏中设置了丰富的地图,每10关切换一个场景。 BOSS的安排遵循每5关一小boss,每10关一大BOSS的规律,让玩家尽情体验激战。 部分代码:
3.实现游戏商城和丰富金融体系怎么样,小白作者自己一点点做出来的游戏商城还看得过去吧? 左上角是金币,与游戏中杀怪获得的积分挂钩。 右上角是钻石,顾名思义,是属于氪金大佬和少数精英玩家的稀缺资源。 鼠标移动到对应商品上会显示半透明的简介,名称,价格,类别和功能。 加载图片和位置:
由鼠标位置确定是否显示商品简介:
至于魔改版的更多讲解和源码我们留到以后讲解。 ?三、未完待续? ? ? ? 本期奇思妙想之超级魔改版外星人入侵小游戏-01就到这里了,感兴趣的朋友可以关注我,后期会相应推出奇思妙想-02-03等系列文章。 ? ? ? ?对本游戏有更好想法的朋友也可以提出你的魔改思路,让游戏变得更有趣更好玩,让大家创新思维的火花尽情地碰撞。想要你的魔改方案实施在游戏中,可以在下方评论区留言或私信作者哦,也欢迎加作者微信:Communistic_belief 学习交流。 ? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/28 12:11:46- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |