Pytris (Python, Leon Czajka, 2020)

来自俄罗斯方块中文维基
Pytris
开发 Leon Czajka
游戏平台 Python(Pygame、keyboard、pynput、colorama)
发行时间 2020年7月6日
游戏信息
预览块数 0(最简图形界面)
场地大小 10 × 20
暂存块
硬降
旋转系统 专用
[[文件:|125px]]
Pytris (Python, Leon Czajka, 2020) ingame.png

Pytris 是一款 Python 四连方块游戏。
该游戏成功模拟出了俄罗斯方块的玩法,但在高级图形界面上存在缺陷。

玩法

消行。
方块每隔半秒钟自动下落一行。
死亡判定:重叠死亡
触发死亡时,游戏程序终止。

操作

左右键横移,上键顺时针旋转,下键十倍速软降,空格键硬降,C 暂存
开局第二块开始可以使用暂存,其他五个操作可以叠加长按。
该游戏使用实心天花板,I、T、S、Z 需要适当降落才能开始旋转。

方块环境配置

方块颜色安排为 SRS 配色,具体用色以“blockImages/block{blockCode}.png”为准。

Tet.pngTet.pngTet.pngTet.pngX2Tet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.png22Tet.pngTet.pngTet.pngTet.png
4444
4444
4444
4X44
Tet.pngTet.pngTet.pngTet.png
333
X33
333
333
333
3X3
Tet.pngTet.pngTet.png

碰撞箱的入场位置如上图所示。
其中,X 格坐标为 (5,19)。
J 和 L 的 3×3 碰撞箱偏右,T、S、Z 的 3×3 碰撞箱偏左上。[注 1]
以下图组中,每一组的最左图是入场朝向,右图是依次顺时针旋转的朝向:
(此处用 SRS 配色表示)

OO
OO
Tet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.png
Tet.pngTet.pngTet.pngTet.png
IIII
Tet.pngITet.pngTet.png
Tet.pngITet.pngTet.png
Tet.pngITet.pngTet.png
Tet.pngITet.pngTet.png
Tet.pngJTet.png
Tet.pngJTet.png
JJTet.png
Tet.pngTet.pngTet.png
JTet.pngTet.png
JJJ
JJTet.png
JTet.pngTet.png
JTet.pngTet.png
Tet.pngTet.pngTet.png
JJJ
Tet.pngTet.pngJ
LTet.pngTet.png
LTet.pngTet.png
LLTet.png
Tet.pngTet.pngTet.png
LLL
LTet.pngTet.png
LLTet.png
Tet.pngLTet.png
Tet.pngLTet.png
Tet.pngTet.pngTet.png
Tet.pngTet.pngL
LLL
Tet.pngTet.pngTet.png
Tet.pngTTet.png
TTT
TTet.pngTet.png
TTTet.png
TTet.pngTet.png
Tet.pngTet.pngTet.png
TTT
Tet.pngTTet.png
Tet.pngTTet.png
TTTet.png
Tet.pngTTet.png
Tet.pngTet.pngTet.png
Tet.pngSS
SSTet.png
STet.pngTet.png
SSTet.png
Tet.pngSTet.png
Tet.pngTet.pngTet.png
ZZTet.png
Tet.pngZZ
Tet.pngZTet.png
ZZTet.png
ZTet.pngTet.png

Pytris (Python, Leon Czajka, 2020) 没有踢墙。

其他说明

这个游戏只能在最简图形界面(命令行,字符环境)运行,其高级图形界面有两处缺陷:
第一,这个游戏没有在 GitHub 公共存储库中提供高级图形界面所需的“block{blockCode}.png”。
第二,高级图形界面的代码调用了数个未在 pytris.py 的 tetris 和 Block 中定义的属性。

注释

  1. 3×3 碰撞箱的方块作为开局第一块时,入场位置会有所偏移。

外链