加载中...

多图警告⚠,然后没有代码,这期主要说原理

各位早上中午下午傍晚晚上半夜凌晨好啊,我自从开设这个网站以来,都还没敲过代码,那我今天就试一下能不能写出一篇雅俗共赏(草)的文章。
好了废话说多点,这样*(@¥&(#&……¥(3


来♂骚♂雷

要想了解扫雷,先要把游戏规则搞懂先(其实大部分人都会的,但是为了凑字#……&¥*#&4678#……&%)

游戏规则

这是一个16x30的“雷区”,当它创建的时候,所有的都是没有点开的,现在,点开其中一个格子,出现了许多的数字,这些数字就是提示你周围的雷数
嗯嗯
下面,我将详细介绍数字的意义,以这一块区域为例

注意,已经探索过的格子是浅色的(包括那些数字所在的),这意味着不会有任何的雷在里面,故可以忽略不看

嗯嗯
最中心的1代表周围的8个方块中,有其中1个是雷;
如果是2,那就是周围的8个方块中,有其中2个是雷,以此类推
再回到这张图,周围的方块已被圈起来,那么看,其中有7个方块是已被探索过的,只剩下一个
又根据数字1,可以得出剩下的一定是雷,所以我们把它做上记号(为了我截图方便,就没插旗子)

注意:对于边界来说,数字虽然也是周围8个方块,但是你去扫雷时不需要考虑超出边界的方块,这也意味着最大的数字不会超过5

嗯嗯
现在,把范围扩大

嗯嗯

可以看到,第三行这个1(从上往下数)周围有一个已经是雷了,根据数1,判断出除了那个已经被标记为雷的,其余均不是雷
所以大胆点开就对了😎

嗯嗯
接下来看上面,这个2如何解?有3个未知
其实没必要看2,看下旁边的1,周围都是已被探索的,只剩下一个,所以那个是雷
这样,刚刚好,那个雷就是在数字2周围8方块内,结合第一次判断出来的雷,总共一定是2
这就通过转移的方法解决了2的问题

所以,转换思想在扫雷里是非常重要的,建议开始就先从1开始扫起,从小到大,如果没有1,建议找未知的方块与数字相接近的方块
但是,在一些刁钻的角度里边,部分的方块是需要蒙的,例如一堆雷里边有一个方块
如果这个方块没被打开,是不会判断赢的

恭喜!你差不多了解了扫雷游戏的规则,然后,我们了解下他的工作原理吧

游戏工作原理

开局

开局(新建游戏)是不会生成任何雷的,因为要避免这一种情况……

出师未捷身先死

如果你第一次点击就被雷搞死了,那确实没有任何游戏体验
不过喜欢没有游戏体验的同学可以选择这么做
所以,只有在你第一次点击时,才会开始尝试生成雷

但是有人要问了:为啥自定义9x9地图的时候雷数只能最高67不能81?
嗯嗯
这是因为:

在第一次点击的时候,需要创建一个以自己为中心的3x3区域来得到“无敌”效果

就像这样:
嗯嗯
这时又有人说了:你这81-9也才72,67哪来的??
嗯嗯
就是这么来的:72-67=5
除了3x3的区域,仍然会有这种未被探索的安全方块

我目前还是没有弄清楚自定义雷数与地图大小的关系,如果知道的,可以去bilibili私信轰炸我
🔗:https://space.bilibili.com/313758599

所以由于这个恶心人的问题,咱们先不谈自定义的雷数,先从9x9的地图开始

游戏过程

当你点击一个数字为“0”的方块时(一般不会显示数字),周围8个都会开启,因为代表的意义就是周围8个都不是雷
如果周围又有一个是“0”的方块时,那么它又会将它周围8个方块开启,一次循环下去,直到没有“0”方块时(就是周围都是有数字时)
就像一开始这个图一样:
嗯嗯

在侦测“0”方块时,边界不考虑在内,如果一个“0”方块在边界附近,那么边界外的方块是不会在侦测范围内的

当你第一次按下去时,其实已经布雷了,这也意味着你第二步就会死,所以……
嗯嗯
对于布雷的机制,随机而已,下一张就会讲到,大概也非常简单

判断胜利

扫雷胜利条件很简单:
只要打开所有不是雷的方块,即可获胜,如下图
嗯嗯
或者

嗯嗯
但如果你虽然知道这里有雷,但是周围的方块没有被打开,是无法获胜的,如图

只差一点点~

死亡

顾名思义,踩到了雷就会死,当然下文的一些操作也可以让你不踩到雷就死
嗯嗯
还是这张图,可以看到:
玩家死后所有的雷都会出来,同时标错的旗子(下文有介绍)也会指出来
嗯嗯


游戏操作

左键

没啥好说的,左键就是开雷,至于说点击之后的反应,那就看上文:游戏过程

右键

第一次按下会产生一个小旗子(🚩)第二次按下会将🚩变成❓

旗子

无法再次被左键打开
标记工具,这样你可以清晰地看清哪里有雷(标错了也有可能),如果标错,就会在死亡时提示你这个🚩标错了
如果你的旗子都刚刚好插正确了,但是超出了雷数,那也不会胜利,因为仍然有一个不是雷,如图
嗯嗯

问号

无法再次被左键打开
同样是标记工具,但是不能作为是不是雷的标准(意思就是标问号不会影响剩余雷数的计算),因为它是给你在去开其他雷时提示你这里还没有做出选择
如图
嗯嗯

左右键同时按

这是个很神奇的按键,它可以快速帮你打开周围的方块,但是代价还挺大
嗯嗯
上图就是利用旗子和该按键组合完成的

插的旗子数必须满足点击数字的数

如果没有满足,那么点击是无用的

问号标识可以被该按键打开

这意味着如果你的旗子插错了,那你就会死亡

不考虑周围8个是否有雷

只考虑周围除了旗子都打开,所以说有时你没有点雷,但是却死亡了,就是这个原因

嗯嗯
上图就把该按键的一些特性体现出来了

总结

如果你善于使用一些简便按键,那么你的速度将会大大提升,如下图
嗯嗯

那么,这一期就结束了,写了2天,太多图了,做了很多实验,下一期!开始写代码!🤮

avatar
Virtual_NeutroN
没什么说的
Follow Me
公告
兄弟们,网站还在建设(建了两年还在建设的屑),大家有什么意见或建议,欢迎前往 https://space.bilibili.com/313758599/ 私信轰炸我
网站资讯
文章数目 :
9
已运行时间 :
本站总字数 :
5.9k
本站访客数 :
本站总访问量 :
最后更新时间 :