题目描述

“俄罗斯方块”(Tetris)是一个经久不衰的小游戏。我们这就来做一个:

Tetra 是 4。我们做一个 Extended Edition

硬性要求:不做掉大分。

  • 掉落的方块,在原游戏基础上增加几种:

    3方块的L 和 l, 5 方块的L。你可以在不影响可玩性的同时加点。

  • 容纳方块大小至少为 12 列 16 行。自适应当前终端,如果不够,则不能启动。

  • 使用方向键!方向键!方向键!实时控制方块旋转与下落,直到方块的下表面与已有方块接触,则刷出下一个方块

  • 旋转前后,如果没有卡上游戏 tick (即向下掉落一格的时刻),方块的最下端高度不应变化

  • 输入不合法的字符,不应使你的程序卡顿、崩溃、异常。

  • 行填满必须消除。并计分。

  • 屏幕内给出操控指示。支持暂停,重新开始等。

软性:

  • 最好打印出较为标准的正方形。比如打印两个黑方块▇▇来组成一个。否则方块旋转后会很丑

  • 按下 方向下键 时方块速度增加

  • 支持计分榜

本实验选题不会奖励写图形界面的同学。如果图形界面有bug还可能导致多的扣分。

但命令行界面可以适当精致。

参考实现效果:Tilnel