Python游戏开发,pygame模块,Python实现升级版坦克大战小游戏
Posted 小雁子学Python
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python游戏开发,pygame模块,Python实现升级版坦克大战小游戏相关的知识,希望对你有一定的参考价值。
前言
这次给大家带来的是坦克大战的升级版本。废话不多说,让我们愉快地开始吧~
开发工具
Python版本: 3.6.4
相关模块:
pygame模块;
以及一些python自带的模块。
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。
更新介绍
1.代码结构优化
现在的代码结构介绍如下:
Game5.py:游戏运行主程序.
cfg.py:游戏配置文件, 主要用来记录游戏素材路径等游戏基本信息.
resources:用于放游戏素材(音频, 图片, 字体等).
modules:
--interfaces:定义游戏开始, 切换和结束界面.
--levels:放游戏各关卡的地图.
--sprites:定义所需的游戏精灵, 如坦克, 子弹, 大本营等等.
--GameLevel.py: 每个关卡的运行主程序, 由Game5.py文件调用.
2.游戏界面优化
加了一些估计价值一毛的特效,譬如开始界面现在是这样了:
游戏切换界面现在是这样了:
游戏主界面添加了一些数据方便玩家查看游戏操作方式和当前的游戏进度:
游戏结束界面优化:
3.添加新的关卡地图更加方便
只需要在levels文件夹中新建一个.lvl文件,然后按照我给出的地图格式模板进行修改即可:
简单解释一下模板含义:
"#"开头的行均为注释行
%TOTALENEMYNUM:本关敌方坦克总数量.
%MAXENEMYNUM:场上敌方坦克最大数量.
%HOMEPOS:我方大本营坐标.
%HOMEAROUNDPOS:我方大本营邻近点坐标.
%PLAYERTANKPOS:我方坦克的出生位置.
%ENEMYTANKPOS:敌方坦克的出生位置.
接下来26*26的矩阵为游戏地图, 其中S代表空地, B代表砖墙,
R代表河流, T代表树, I代表铁墙, C代表冰地.
4.游戏体验优化以及BUG修复
(1) 解决了坦克在一些岔道口转弯困难的问题;
(2) 添加了和原版一样的坦克被摧毁后的爆炸特效;
(3) 修复了多人模式中坦克复活的BUG;
(4) 修复了坦克子弹存在的潜在BUG;
(5) 修复了部分食物功能存在的BUG;
(6) 坦克保护状态时特效优化;
(7) 完善了地图元素的功能支持(冰地上加速, 在树林里会看不见坦克等等);
(8) 其他代码细节优化。
文章到这里就结束了,感谢你的观看,Python24个小游戏系列,下篇文章分享重做flappybird小游戏
为了感谢读者们,我想把我最近收藏的一些编程干货分享给大家,回馈每一个读者,希望能帮到你们。
干货主要有:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
⑥ 两天的Python爬虫训练营直播权限
All done~私信获取完整源代码。。
往期回顾
以上是关于Python游戏开发,pygame模块,Python实现升级版坦克大战小游戏的主要内容,如果未能解决你的问题,请参考以下文章
Python游戏开发,pygame模块,Python实现经典90坦克大战游戏
Python游戏开发,pygame模块,Python实现2048小游戏
Python游戏开发,pygame模块,Python实现过迷宫小游戏
Python游戏开发,pygame模块,Python实现记忆翻牌小游戏