一、前言
快到圣诞节啦!这段时间比较闲,用pygame写了一个小游戏,就是标题写的《坦克大战》。设计的时候难免会有一点点不合理的地方,水平有限,希望各位读者能够包涵一下。
文末领取全套最新Python学习资源!
二、开发环境
我们先来看看我的开发环境,用的东西还是比较简单的:
作者:Zack
时间:2020年10月16日
集成开发工具:pycharm 2020
开发环境:python 3.7.9
第三方模块:pygame
其中我还用了一些第三方模块,但是在游戏主体中没有使用,所以就先不介绍了。下面我们来看看游戏实现了些什么功能。
三、项目介绍
项目截图
我们主程序入口在main.py文件,在安装好pygame模块后就能直接运行。下面是运行截图:
下面是子弹击中墙壁的爆炸效果:
我们再来看看项目的各个文件。
下面是项目目录:
(1)resources
其中resources是资源文件,音频、图片等都在resources目录。而tools中提供了两个小工具,因为只是供个人临时使用的,这里不过多解释了。
(2)main.py
而main.py则是项目的主入口,代码很短:
from tank_war import TankWar
if __name__ == '__main__':
tankWar = TankWar()
tankWar.run_game()
我们直接创建了TankWar的实例,然后调用run_game方法运行游戏。
(3)tank_war.py
tank_war.py中写了我们坦克大战游戏主体的模块,里面的TankWar类定义了游戏主体的一切行为。包括初始化屏幕、初始化pygame模块、创建敌方坦克、绘制地图、检测碰撞、监听事件等。
(4)sprites.py
在pygame中提供了一个sprite类用于创建有图像的物体。而sprites中定义的都是sprite的子类,因此也都是有图片的类。其中包括坦克基类、英雄类(我方坦克)、敌人类(敌方坦克)、子弹类、墙类等。
而各个类中定义了各自的行为,例如:坦克类有发射子弹的行为、移动的行为、爆炸的行为等。
(5)settings.py
settings.py中定义了一些设置信息,包括子弹的数量、子弹的速度、坦克的速度、地图信息、图片信息等。我们可以通过修改settings.py来调整游戏的一些设置,因为还没有写设置相关的操作,所以需要修改源码。
代码就不解释了,自己获取代码尝试运行一下!有什么问题在下面说说看!
如果大家对Python感兴趣,那么这套python学习资料一定对你有用
对于0基础小白入门:
这如果你是零基础小白,想快速入门Python是可以考虑的。
一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。
包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,人工智能、机器学习、Python量化交易等习教程。带你从零基础系统性的学好Python!
我已经上传至CSDN官方,如果需要可以扫描下方二维码都可以免费获取【保证100%免费】
![](https://img-blog.csdnimg.cn/img_convert/e84b2701ada842d2a8c920692f3eb40a.png#pic_center)
零基础Python学习资源介绍
-
Python所有方向的学习路线图,清楚各个方向要学什么东西
-
600多节Python课程视频,涵盖必备基础、爬虫和数据分析
-
100多个Python实战案例,含50个超大型项目详解,学习不再是只会理论
-
爬虫与反爬虫攻防教程包,含15个大型网站迫解
-
超300本Python电子好书,从入门到高阶应有尽有
-
华为出品独家Python漫画教程,手机也能学习
-
历年互联网企业Python面试真题,复习时非常方便
👉Python学习路线汇总👈
Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(全套教程文末领取哈)
👉Python必备开发工具👈
👉Python学习视频与电子书籍👈
观看零基础学习视频,结合电子书籍最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
👉实战案例👈
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
👉100道Python练习题👈
检查学习结果,巩固所学知识。
👉面试刷题👈
最新全套【Python入门到进阶资料 & 实战源码 &安装工具】(安全链接,放心点击)
上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。
本期内容就分享到这里,下回再见啊 !喜欢并且对你有用的话,记得点赞支持一下 !!