恶搞俄罗斯方块的制造之旅也可以结束了,通过上三次的说明,基本就整遍了整个代码,虽说都说了一些类名和方法名而没有涉及到具体的实现,不过实现就是排列几句代码,大家一定没问题吧:)
揉成一团
总是可以把这几次说的东西放在一起运行了,界面的美化啥的我完全没有做,所以很难看,咱们主要学习的东西是pygame,就不在这上面多花功夫了。
运行界面:
这个是第4种模式的截图,会落下莫名其妙的东西的版本…… 落下个猫先生纪念“夏目友人帐3”的完结。。。
各个模式说明:
- 1: 落下的直接消失
- 2: 落下长条
- 3: 非常小的方块
- 4: 上图所示,落下乱糟糟的东西(当然可以随便改)
- 5: 暂时和6一样,发挥交给你们了:)
- 6: 正常模式
完成度说明:
直接进去菜单是没有背景的,你很容易自己加一个……游戏过程中空格暂停,Esc返回菜单,返回菜单时直接覆写在当前的游戏画面上。暂时懒得弄了,大家先凑合凑合。
资源说明:
图片和音效是网上随便找的,许可什么的,我什么不知道……
背景音乐史俄罗斯方块之经典“永恒俄罗斯”的音乐中的Hawker’s song,理论上应该是有版权的,不过都已经20多年了,而且咱们是学习,学习~ 不要太在意了(笑)
下载
我放在DBank上是因为记得DBank不用下载器也不用登陆就能下载的,直接点可能会跳出登陆框,直接右键另存为就OK了。
py2exe的执行代码也放出来了,基本就是参考我之前的py2exe篇写的,不过说实话这东西真是难搞,还是多多实践,根据每个工程自己修改,不存在一个脚本放在哪里都好用!
总结
如果您做过游戏,稍微看看这里面的代码一定会嗤之以鼻,看似有条不紊实际上可实在有些乱,各种界面的跳转也是很让人崩溃。不管图像还是运动,都是用最原始的东西组织起来的,维护起来简直要命啊。
我们需要“游戏引擎”来让我们的游戏书写更加的漂亮。
为什么一开始不提供一个引擎?如果一开始就引入引擎的概念,会让我们对引擎的认识不深刻。只有真正的用原始的代码写过一个游戏后,我们才能意识到“引擎”的作用和必要性。对我们面对的东西有足够深刻的认识,才能让我们更卓越!
当时光看这几篇文章的内容,是不够理解的,只要把代码通读,然后完成一个新的模式(就是那个空着的模式5),才能有足够的认识(这个代码写的不够漂亮,着重理解的是pygame,而不是整个代码设计,我可不能误人子弟啊)。
下一个游戏会更加的精彩……
更新
关于在fedora上运行不起来的问题,我原想会有哪位fedora用户研究一下把问题贴出来呢,看来没有,只好自己安装了尝试了……
问题在于game.py中pre_init(44100, 16, 2, 1024*4),fedora必须把16改小,比如8,或者默认的-16,具体原因我也没时间找,猜测可能是fedora的声卡驱动对回放的限制有些多吧。
Good job!
请问python的俄罗斯方块的源码包还在吗,能不能给我一份
邮箱是374126386@qq.com
正在学习python~求大佬发一份源码谢谢(;´༎ຶД༎ຶ`)
邮箱是:15235117537@163.com
下载 不了源码,大佬
问一下 是不是在linux上不能运行啊 我再Fedora 15上运行之后虾米都没 ?
我在Ubuntu 10.10上运行的很好,如果能贴出错信息的话,或许能看出一些端倪。
源码,能发我下吗?邮箱:ludahai19@163.com
我在fedora 14上运行也是什么也没有
请参考文章更新的部分
强悍啊
代码下不了啊,博主帮下忙,传给我好么……我学习下
527259122@qq.com
学习 求源码包啊 794236121@qq.com
dbank 现在需要坑爹的插件下载器,还是exe的。linux用户情何以堪
博主你好,我在此教程的基础上修改了部分代码与素材资源,写成一俄罗斯方块,想要送给朋友娱乐,请问这样是否侵犯您的权益?谢谢
完全可以,我的权益?那是什么东东:)
请问python的俄罗斯方块的源码包还在吗,能不能给我一份
邮箱是374126386@qq.com
能否也给我发一份新的源码包或作者原来的源码包,现在现在不到了。谢谢。 1813103535@qq.com, 非常感谢!
大佬,能否提供一下源码,316982073@qq.com,谢谢!
@xishui: =、=、=、==、=、=、=
感谢博主的无私奉献。
请教个问题,我在阅读源码的时候,在main.py中发现
self.tetris = eval( “tetris.Tetris” + str(kind) + “(self.screen)”)
不是很理解其作用,感觉是根据kind值去确定Tetris X ?求解答!!
时间比较久了,手头没有源码我也不太记得具体的功用了,但是你的猜测是正确的,里面有很多TerisX的函数,如果按照传统的
比较低效,而且也不确定到底有多少种x,所以使用eval来“合成”代码并执行,当然这种方法未必是最好的,Python中还有一种比较流行的做法是把函数存储在一个字典里,通过key来调用……
多谢博主回答!原来eval还有这功能。。。学习了!
楼主的 《恶搞俄罗斯方程的源码包》还有吗? 劳驾发一份到1813103535@qq.com, 非常感谢!
还要请教个问题,我在shape.py的check_legal和at_bottom函数中发现,写的是shape[y][x],为什么不是shape[x][y]呢?求解!
这个真难讲,程序就是这样的运行机制。。。可以画个坐标图,自己看看?
我怎么下不下来代码,楼主请赐教
那就是没有成功执行吧,看看log里写了些什么。
楼主辛苦了
文件编码我这边测出来是gb2312, 略蛋疼啊, 我Ubuntu系统的……
您好 源码方便转发一下吗
楼主辛苦了, Again!
下标有问题额, 变成浮点数了:
“`
Start game at level 1
Will read /home/tyler/Downloads/ftetris3k/data/image/background.jpg
Traceback (most recent call last):
File “run_game.py”, line 14, in
game.run()
File “/home/tyler/Downloads/ftetris3k/lib/game.py”, line 56, in run
tetris.loop()
File “/home/tyler/Downloads/ftetris3k/lib/game.py”, line 43, in loop
self.stat = self.main.run(elapse)
File “/home/tyler/Downloads/ftetris3k/lib/main.py”, line 8, in run
return self.tetris.update(elapse)
File “/home/tyler/Downloads/ftetris3k/lib/tetris.py”, line 51, in update
e.key == K_LEFT, e.key == K_RIGHT)
File “/home/tyler/Downloads/ftetris3k/lib/tetris.py”, line 81, in move
elif d: next(self) #self.shape.move(0, 1) is bad
File “/home/tyler/Downloads/ftetris3k/lib/tetris.py”, line 155, in __next__
if self.shape.at_bottom():
File “/home/tyler/Downloads/ftetris3k/lib/shape.py”, line 175, in at_bottom
self.board[self.y+y+1][self.x+x])):
TypeError: list indices must be integers, not float
“`
上面那个浮点数错误是因为我转py3k忘了py3k默认地板除改为了浮点除
一个BUG:
Space暂停后, 可以通过方向键一下一下的按来控制-__-
你好,这个完整版还提供下载么?
博主,下载链接错误,想要看你的源码进行学习!
链接无法下载,求源码!!
博主您好,这个代码下载不下来了,说网盘外挂存在,哪里还有链接可以下载到吗
抱歉,我自己也没有了……
楼主 俄罗斯方块代码能不能个我一份,非常感谢,好强悍!
楼主,能提供一下俄罗斯方块的源码吗?1461862234@qq.com这是我的邮箱,非常感谢
不知道大佬还有没有源码QAQ想要一份来学习。有的话希望能发一份,邮箱80803716@qq.com
大佬,来个源码吧,谢谢!邮箱1171443643@qq.com
哪位大佬给发一下源代码吧,谢谢啦!!
w8866kl@163.com
那位好心的大佬,来个”实战二:恶搞俄罗斯方块源码” 吧,谢谢!非商业,纯学习用的。邮箱 xzm.gd@126.com
楼主,下载地址无效了啊
楼主源代码包发我一份吧,邮箱443773516@qq.com,谢谢
你好,可以发下我的邮箱这个俄罗斯方块的工程代码嘛?谢谢了
3330382958@qq.com
你好,这个俄罗斯方块的工程代码还在吗?如果有,能不能发我邮箱?谢谢了.
看评论里的朋友,也需要这个工程代码,哪位朋友有的话,可以共享么?
1424185332@qq.com
请问博主还有俄罗斯方块工程的源文件吗,能否发一份,正在学习,谢谢。8640846703@qq.com
邮件地址写错了,应为 840946703@qq.com,谢谢
你好博主,那个俄罗斯方块的工程代码还在吗?如果有,能不能麻烦博主发我邮箱?谢谢了.1424437970@qq.com
麻烦哪位还有源码的可以发我一个吗?414746820@qq.com,谢谢了。
求代码7864051@qq.com
求代码1101242813@qq.com
博主!
您好,
下载链接失效了,能把源码发我下吗? 邮箱:ludahai19@163.com
谢谢
大神,代码还在不。。。
求搭救!
1192326568@qq.com
我的邮箱是:1192326568@qq.com
求俄罗斯方块的代码。非常感谢!!!
学生党 求哪位好心人发一份源码 学习python 非常感谢!!! 1921904384@qq.com
游戏已经开发好了, 现在想把游戏打包成可以在安卓和ios手机上运行的安装包, 该怎么办呢? 网上找了一些方案都没有走通, 目光大哥能出个教程吗 ?
已经学完入门22篇希望能得到一份源码学习~ 92446145@qq.com
您好,最近正在学习pygame,希望能得到一份源码看一下,谢谢931251232@qq.com
博主你好,最近在学习python,想通过实例学习,希望能得到一份源码借鉴一下,万分感谢。
2508497853@qq.com
博主你好,可以把俄罗斯方块的源码给发一下吗?万分感谢。
博主你好,可以把俄罗斯方块的源码给发一下吗?万分感谢。
359769412@qq.com
博主,我正在学习python,能麻烦您发一下俄罗斯方块的源码吗?十分感谢 2567348204@qq.com
博主,能麻烦您发一下俄罗斯方块的源码吗?十分感谢 884957043@qq.com
麻烦发一下源码学习一下啊 110788959@qq.com
学习了 几周了,实战一下,希望能 发一下俄罗斯方块的源码学习一下啊 277757418@qq.com
Pingback: 用 Python 和 Pygame 写游戏 – 从入门到精通(目录) – ITPCB
有谁有俄罗斯方块的源码,麻烦发一下十分感谢!邮箱:1044734463@qq.com
现在求一份代码还有人吗1014968238@qq.com
求问哪位大神还有源码呢?
279972824@qq.com
还有人可以发一份源码吗?十分感谢
XCmaki@hotmail.com