pygame飞机大战系列文章介绍

从开始学习python,到学习用pygame来写游戏,历时三个月,其中五月份基本荒废,原创写了53篇文章了,主要是用来记录下自己的学习经历。

写飞机大战的代码,主要经历了四个阶段。大家想学pygame,这几个阶段还是必不可少。跳跃着学,会很累。

第一阶段,简单的入门,几乎没有用到pygame的精华,也就是转载文章里的知识。但是这几篇文章用来入门是极好的,基本实现了游戏的框架搭建。但想实现复杂的功能,遇到了瓶颈,所以中途就放弃了。

第二阶段,用pygame的精灵来编写,世界一下开阔很多。写了子弹的系类,也是边写变学习,写完基本掌握了精灵的用法。大部分复杂的功能都能实现了。可是感觉代码开始臃肿,特别是动态飞机、子弹等等,单独的精灵或者精灵组控制显得很乏力。

第三阶段,用精灵的层概念来写,写了BOSS系类。实现了动态子弹,花样发射方式。

第四阶段,把前面的知识又稳固了一下,写了英雄系类,选择界面,键盘方向键和发射键的控制,僚机,子弹变换,终极技能什么的。

这四个阶段写完,已经完全可以做个功能很强大的飞机大战游戏了。

选择界面,不同飞机,不同发射方式,击中奖励,僚机,生命显示,分数显示,动态飞机,动态子弹,炸弹、终极技能,能量条,子弹升级,爆炸效果,音效……一个打飞机游戏该有的部分,差不多都实现了。

第五阶段,小兵系类,写了一点点,花样的飞行方式,贝塞尔和B样条,已经可以实现大部分的轨迹了。

至此,知识点已经够用了,慢慢调试,只要有耐心,写个耐玩的飞机大战一点都不难。
可pygame终究只是个入门的引擎。敌机的出现时间,地点,发射方式,都需要用代码来控制。例如30秒出现什么,调用什么函数,1分钟后出现什么,调用什么,太精细了。

本来是想写个10多分钟的游戏的,实在是没有耐心。特别是看了用scratch这种傻瓜式的引擎后,更加感觉pygame用来玩玩还是可以,用来做游戏,还是算了吧。

如果真想开发一个游戏,cocos2d的python版本也比pygame好多了,特效菜单,粒子特效,层的控制,具备了游戏引擎的很多功能。

后面估计不会再写飞机大战的文章了,实在想不出还有什么能写的了。

里面所有的代码和资源,都可以在我的 G码云下载

https://gitee.com/hailler

当初申请这个,也仅仅是为了保存代码用,CSDN存放代码太麻烦了。

直接看最终的代码会很累,还是按照文章的顺序,一点点看比较好,也容易掌握。

你可能感兴趣的:(python,pygame)