今天给大家分享的开源项目可以说非常适合入门,还比较好玩,更是一个有故事的项目。既能满足想学习的读者,又能满足那些喜欢八卦的读者。
提到植物大战僵尸相信大部分读者都不陌生,可以说是塔防类游戏的鼻祖。就鸟哥来说,我很少玩游戏的,但这款植物大战僵尸游戏却陪伴了我半个大二下学期啊,可以说是我人生中坚持玩的最长时间的游戏,最后放弃的原因是后面太难玩了,老是不过关。
故事中主角的女友,也曾一度痴迷于玩这款游戏,但到后面的时候和我一样就卡住了,怎么都不能闯关,在强迫症的迫害下几近崩溃,无奈之下,联系了她的程序员男友,让其帮忙破解。男友意识到翻身的机会来了,也是费了很多功夫寻求破解之道,但哪有这么容易呢,于是,干脆自己亲手撸了一款一模一样的植物大战僵尸,而且偷偷留了暗门,通过配置参数,控制游戏的难易程度。最牛批的地方是把僵尸替换成了自己的模样,哈哈。最终,翻身舔狗把歌唱呀。当然,这是一个我从某乎上看到的——一个无从考证却又觉的很真实的程序员和女友的故事。
顺着故事的线索,还真找到了一款类似的项目。应该不是本尊,鸟哥编译尝试了一下还是非常不错的,否则我也不会分享啦。
简单介绍一下这款Python 语言开发的植物大战僵尸的游戏。
项目的编译环境
Python3.7及以上版本,直接去python官网下载安装即可;还需要依赖 pygame模块,执行pip3 install pygame即可安装。环境搭建还是非常简单的,连鸟哥这种从来没写过Python的菜鸟分分钟也就搞定了。
项目运行
将源码下载到本地(强烈推荐大家使用Downloade模式,git clone 就很蛋疼了),在项目根目录下执行python main.py命令,即可运行。
功能方面
目前支持的植物类型:太阳花、豌豆射手、寒冰射手、坚果、樱桃炸弹、双重豌豆射手等;支持的僵尸类型:普通僵尸、棋子僵尸、路障僵尸、铁桶僵尸、毒爆僵尸项目使用 Json 文件保存关卡信息,可独立设置僵尸出现的时间和位置。
可惜是,竟然没有熟悉的背景音乐!简直是丢失了灵魂呀,有能力的读者还请加上。
总之,非常适合新手学习了!另外呢,还给大家整理了一份Java版本的,在功能方面和上面的版本差不多。值得关注的是,
作者将整个游戏的设计思路、游戏对象、功能原理介绍的非常详细
,相关文章链接我也已经整理好。其它就不多介绍了,感兴趣的可以研究一下。
两个版本的源码已整理上传到后台
识别下面的二维码?(非本公众号)
后台回复关键词:
植物大战僵尸
来源公众号:菜鸟要飞