用Python和Pygame写游戏-从入门到精通(实战二:恶搞俄罗斯方块4),pythonpygame, 运行界面:这个是第4种


恶搞俄罗斯方块的制造之旅也可以结束了,通过上三次的说明,基本就整遍了整个代码,虽说都说了一些类名和方法名而没有涉及到具体的实现,不过实现就是排列几句代码,大家一定没问题吧:)

揉成一团

总是可以把这几次说的东西放在一起运行了,界面的美化啥的我完全没有做,所以很难看,咱们主要学习的东西是pygame,就不在这上面多花功夫了。

运行界面:

这个是第4种模式的截图,会落下莫名其妙的东西的版本…… 落下个猫先生纪念“夏目友人帐3”的完结。。。

各个模式说明:

  • 1: 落下的直接消失
  • 2: 落下长条
  • 3: 非常小的方块
  • 4: 上图所示,落下乱糟糟的东西(当然可以随便改)
  • 5: 暂时和6一样,发挥交给你们了:)
  • 6: 正常模式

完成度说明:

直接进去菜单是没有背景的,你很容易自己加一个……游戏过程中空格暂停,Esc返回菜单,返回菜单时直接覆写在当前的游戏画面上。暂时懒得弄了,大家先凑合凑合。

资源说明:

图片和音效是网上随便找的,许可什么的,我什么不知道……
背景音乐史俄罗斯方块之经典“永恒俄罗斯”的音乐中的Hawker’s song,理论上应该是有版权的,不过都已经20多年了,而且咱们是学习,学习~ 不要太在意了(笑)

下载

DBank下载

我放在DBank上是因为记得DBank不用下载器也不用登陆就能下载的,直接点可能会跳出登陆框,直接右键另存为就OK了。

py2exe的执行代码也放出来了,基本就是参考我之前的py2exe篇写的,不过说实话这东西真是难搞,还是多多实践,根据每个工程自己修改,不存在一个脚本放在哪里都好用!

总结

如果您做过游戏,稍微看看这里面的代码一定会嗤之以鼻,看似有条不紊实际上可实在有些乱,各种界面的跳转也是很让人崩溃。不管图像还是运动,都是用最原始的东西组织起来的,维护起来简直要命啊。

我们需要“游戏引擎”来让我们的游戏书写更加的漂亮。

为什么一开始不提供一个引擎?如果一开始就引入引擎的概念,会让我们对引擎的认识不深刻。只有真正的用原始的代码写过一个游戏后,我们才能意识到“引擎”的作用和必要性。对我们面对的东西有足够深刻的认识,才能让我们更卓越!

当时光看这几篇文章的内容,是不够理解的,只要把代码通读,然后完成一个新的模式(就是那个空着的模式5),才能有足够的认识(这个代码写的不够漂亮,着重理解的是pygame,而不是整个代码设计,我可不能误人子弟啊)。

下一个游戏会更加的精彩……

更新

关于在fedora上运行不起来的问题,我原想会有哪位fedora用户研究一下把问题贴出来呢,看来没有,只好自己安装了尝试了……

问题在于game.py中pre_init(44100, 16, 2, 1024*4),fedora必须把16改小,比如8,或者默认的-16,具体原因我也没时间找,猜测可能是fedora的声卡驱动对回放的限制有些多吧。

评论关闭