Pytris (Python, Marlon Gamez, 2019)
Pytris | |
---|---|
开发 | Marlon Gamez |
游戏平台 | Python(enum、queue) |
发行时间 | 2019年10月22日 |
游戏信息 | |
预览块数 | 0 |
场地大小 | 10 × 22 |
暂存块 | 无 |
硬降 | 无 |
旋转系统 | 专用 |
| |
| |
|
Pytris 是一款 Python 四连方块游戏。
该游戏在命令行环境模拟俄罗斯方块的玩法,输入简单的指令控制方块。
该游戏消行的后续处理有一处较为严重的问题。
玩法
消行。
方块不会自动降落,只能用下移指令手动降落。
方块入场时,被重叠的砖格会消失,所以这个游戏是不会死亡的。
不过,横移方块必须目标位置全空才能成功,“重叠死亡”的情形通常无法继续。
操作
a/d 横移一格,e 顺时针旋转,q 逆时针旋转,s 下移一格。
每次在命令行输入相应的单个小写字母[注 1]后,都要接一次回车键执行操作。
方块接地时执行 s 是锁定。
方块环境配置
数字 0–6 分别表示 IOJLSZT。
|
各碰撞箱的入场位置如上图所示。
其中,X 格坐标为 (6,21)。
下图是各方块的入场朝向,每次旋转将碰撞箱内容旋转 90 度:
(J 和 Z 取修复后的入场位置)
|
|
|
|
|
|
|
Pytris (Python, Marlon Gamez, 2019) 有踢地和左右踢墙。
方块旋转目标位置被挡时,先测踢地,再测左右踢墙,如果都失败,则强取目标位置。[注 2]
其他说明
这个游戏没有 J 和 Z,因为方块初始纵坐标被正转负了。
修复方法:将 tetrimino.py 第 26、32 行中纵坐标的三处 1 改成 -1。
这个游戏表面上是正常消行,实际上每次消行都压缩场地的可用空间。
具体表现:总消行数为 n 时,天花板下方的 n 行区域内的新砖格会向上复制到顶,有实体,不随后续消行减少。
此外,各方块(特别是 I)在左墙附近强取旋转目标位置可部分穿越到场地右侧;
I 向右墙和场底强取越界位时,游戏报错退出。