Skip to content

zhongyang219/ConsoleTetris

Repository files navigation

ConsoleTetris

这是一个基于Windows控制台的俄罗斯方块游戏。

它除了提供基本俄罗斯方块游戏以外,还有双人模式、隐形模式、道具系统、键位设置、界面宽度设置等功能。

这是我的早期作品之一,编写于2016年6月,完成于2016年10月。

用户手册

主界面说明

image-20220811192937137

按键说明

image-20220811193155482

得分与等级

在本游戏中,消除任意行数可以增加游戏得分。消除的行数和得分的关系如下表所示:

消除的行数 增加的得分
1 1
2 3
3 5
4 8

当得分增加到一定值的时候,会使得等级提升(选项设置中可以指定提升 1 个等级所需要的得分,详 见下面“选项设置”小节),如果选项设置中设置为允许升级的话。

在本游戏中,等级会决定方块下落的速度,等级为 1 级时方块下落的速度 最慢,等级越高,方块下落的速度就越快。当等级达到 9 级时,方块下落的速 度已经达到最快,此时等级再提升将不会改变方块下落的速度。

游戏结束

当新的方块在界面的最上方生成的时候,如果它所在的位置已经被原有的 方块占据,则被判定为游戏结束。游戏结束时会显示如下界面:

image-20220811194408748

此时按Y键将重新开始游戏,按N键退出程序。

游戏暂停

在游戏过程中按下回车键将进入暂停状态,如右图所示。此时,可以按下S、L和O键实现保存进度、载入进度和选项设置功能。

image-20220811194602059

处于暂停状态时,按回车键或ESC键将返回游戏。

保存与载入进度

游戏提供了保存和载入数据的功能。要进行保存或载入进度,先按回车键进入暂停状态,如上图所示。

保存进度

在暂停状态下,按下键盘上的S键后,界面显示“已保存”,此时,游戏的进度、得分和各种选项设置将会被保存到游戏主程序所在目录下面名为“GameData.dat”的文件里。如果不存在此文件,则此文件会被自动创建。

载入进度

在暂停状态下,按下键盘上的L键将载入游戏主程序所在目录下“GameData.dat”文件中的游戏数据。载入后游戏界面显示“已载入”。 在执行了保存或载入操作后按回车键或ESC键返回游戏。

选项设置

要进入选项设置,在游戏过程中按回车键进入暂停状态,此时下键盘上的O键将进入选项设置。 选项设置界面如下图所示:

image-20220811194758729

在选项设置界面按上下方向键可以切换选中的项目。其中当选中的项目为第2项或第4时,按下回车键或右方向键后将出现一个闪烁的光标:

image-20220811194834629

此时需要从键盘输入一个数字来设置对应选项的数值,输入之后按回车键。

注:当出现闪烁光标时,必须从键盘输入一个数字,此时按ESC键不能返回。 当选中的项目为第1、3、5、6、7项时,按回车键或右方向键可以依次在可以设置的选项中切换。

显示消除动画

将此选项设置为“是”时,如果游戏中出现了可消除的行,将会提供一个逐个格子消除的动画效果。将此选项设置为“否”时,如果出现可消除的行,则该行直接消失。

消除动画间隔时间

此选项用来设置消除动画效果的快慢。这个选项的设置值代表了消除一行时,消除第一个格子所花的时间,此数值设置的越大,消除动画的速度就越慢,反之则越快。它的可允许设定值为5~9999毫秒之间。它的默认值是40毫秒。

允许升级

此选项用来设置是否允许升级。 将此选项设置为“是”时,增加得分会使得等级提升;如果将此选项设置为“否”,则等级将一直是1级,不会提升。同时,主界面中的等级信息将不显示。 注:如果等级已经超过1级了,将此选项从“是”更改为“否”的话,等级会直接变为1级,将此选项更改为“是”后恢复原来的等级。

提升1级所需的得分

此选项用来设置等级每提升1级所需的得分。 此选项的值设置得越大,等级的提升就越困难,同时,方块下落速度的提升也会变得越慢,获得更高的得分也会变得越容易; 此选项的值设置得越小,等级的提升就越容易,但是方块下落速度的提升就会越快,获得更高的得分将变得越困难。 此选项的设定值不允许小于1。 注:本游戏中等级的计算方法为:等级 = 得分/提升1级所需的得分 + 1。

退出时自动存档

将此选项设置为“是”时,按ESC键退出游戏前会自动执行一次保存操作。 注:鼠标点击游戏窗口右上角的关闭按钮退出游戏将不会自动保存。

隐形模式

将此选项设置为“是”时游戏将进入隐形模式,将此选项设置为“否”时将退出隐形模式。详细内容参见下面“隐形模式”小节。

隐形模式难度

此选项用于设置隐形模式下游戏的难度,有“低”、“中”、“高”三种难度可选。详细内容参见下面“隐形模式”小节。

方块颜色设置

选择此选项将进入方块颜色设置的二级菜单,如图所示:

image-20220811195148665

此选项可以自由定义7种俄罗斯方块的颜色,总共有白色、红色、绿色、蓝色、黄色、蓝绿色、紫色和灰色8种颜色可选。 在方块颜色设置中,按上下方块切换选中的项目,按左右方向键可以切换选中项目的颜色。选择最后一项“恢复默认颜色”时,按回车键或右方向键可以恢复成默认的颜色。 按ESC键将返回上一级菜单。 注:更改了方块颜色设置时,当前方块和下一个方块的颜色都不会改变,从下下一个方块开始,方块的颜色才会变为设置的颜色。

键位设置

选择此选项将进入键位设置二级菜单,如图所示:

image-20220811201206457

使用上下方向键选择对应的项,按下回车键设之后,按下要设置的键设置键位。

双人模式

将此选项设置为“是”时,将开启双人模式,可允许两名玩家同时游戏。关于双人模式的说明请参照下面的“双人模式”章节。

界面宽度

此选项可以设置界面的宽度。选中此选项后按下回车键,输入要设置的界面宽度,按下回车键即可。界面宽度可允许设置的范围为10~20。

如果新的界面大于原来的界面宽度,则界面会向右侧扩展。

如果新的界面小于原来的宽度,则界面右侧多余的列会被隐藏。

注意:如果更改界面宽度后出现了可消除的行,则这些行会被立刻消除,同时界面右侧不可见的列将保持不变。

游戏音效

开启此选项后,在方块移动、旋转、下落,以及消除行时会有相应的音效。

道具系统

本游戏中提供的道具共有3种:长条、炸弹和穿甲弹。获得道具后会在界面左侧显示出来,如下图所示:

image-20220811195252586

道具的获得

在游戏中,每消除任意行数会有一定的概率随机获得一个道具,消除的行数和获得道具的概率的对应关系如下表所示:

消除的行数 获得一个道具概率
1 10%
2 25%
3 50%
4 100%

道具的使用

按下键盘上的数字1、2、3键分别使用长条、炸弹和穿甲弹道具。使用后,下一个方块将变成使用的道具(当前方块并不会变化)。如下图所示:(注:如果下一个方块已经是要使用的道具,则不会使用道具,相应道具的数量不会减少。)

image-20220811195438523

炸弹道具

炸弹道具将会消除它所在下方的一个4x4的区域。如下图所示:

image-20220811195512739

穿甲弹道具

穿甲弹道具将无视遮挡,下落到它所在列的最下方的一个空的格子中并将其填充。 如下图所示:

image-20220811195553203

隐形模式

隐形模式为本游戏中难度较大的模式,在隐形模式下,下方的方块将不可见,玩家只能通过记忆来判断方块应该下落的位置。

image-20220811200021365

但是在不同的难度下,下方方块可以在特定的时候显示一段时间。 要进入隐形模式,请在选项设置中将“隐形模式”一项设置为“开”。选项设置的详细操作方法请参见上面“选项设置”小节。 隐形模式共有3种不同的难度模式可供选择,分别为“低”、“中”、“高”。在选项设置中可以设置隐形模式的难度。如下图所示。选项设置的操作方法请参见上面“选项设置”小节。

image-20220811200106728

低难度模式

选项设置中将“隐形模式难度”设置为“低”时即为此模式。在此模式下,方块每次下落的瞬间都会显示一次下方的方块,时间持续500毫秒。如图下所示:

image-20220811200314746

注:如果选项设置中开启了“显示消除动画”,则当有消除行时,显示消除动画将获得更长的显示下方方块的时间。

中难度模式

选项设置中将“隐形模式难度”设置为“中”时即为此模式。在此模式下,只有在有消除行时才显示下方方块,在消除动画前会有500毫秒的停顿时间。

高难度模式

选项设置中将“隐形模式难度”设置为“高”时即为此模式。在此模式下,任何时候都不会显示下方方块,直到游戏结束为止。在此模式下,如果选项设置中将“显示消除动画”设置为“是”,则在有消除行时会显示当前消除的行,并显示消除动画,如下图所示。

image-20220811200601564

双人模式

开启双人模式后允许两名玩家同时游戏。如下图所示:

2022-08-11

在此模式下,两名玩家将分别控制一个方块。方块在落地前互不干扰。

About

一个基于Windows控制台的俄罗斯方块游戏

Resources

License

Stars

Watchers

Forks

Packages

No packages published