Java实现扫雷小游戏介绍
Java实现扫雷小游戏介绍
2022-05-02 / 0评论 / 386阅读 / 0点赞
-- XG.孤梦

Java实现扫雷小游戏介绍

XG.孤梦
2022-05-02 / 0 评论 / 386 阅读 / 正在检测是否收录...

游戏介绍

扫雷游戏是一款windows经典的电脑休闲小游戏,办公室打发无聊时间用的,非常受人喜爱,扫雷就是要把所有非地雷的格子揭开即胜利,踩到地雷格子就算失败。让玩家们找回童年玩此款游戏的乐趣,在游戏中只要掌握一些小技巧,闯关就会变得容易很多哦!

初步分析

通过扫雷界面图片可以分析出:

  • 界面是一个窗口,有菜单栏标题栏游戏区
  • 菜单栏里有游戏帮助两个菜单。
    54759-9ydiwfwuib.png

游戏菜单里有:开局、初级、中级、高级、自定义、扫雷英雄榜、退出等7个子菜单;

36546-fsh25cb8vhv.png

1、在游戏菜单里能够设置游戏的重新开局, 也可以通过点击游戏区里的笑脸来重新开局

2、设置游戏的级别,分为初中高三个游戏级别:

  • 初级是由9*9的方格组成,雷数为10,非雷数71;
  • 中级由16*16的方格组成,排有40个雷,非雷数为216;
  • 高级是由16*30的方格组成,其中有99个雷,非雷数为381;

3、自定义功能能够让玩家重新定义游戏的布局(行列范围9~30)与雷数(少于格子数且不能全是雷);

4、表情 游戏仍然在继续的时候显示微笑的表情表情,当鼠标按住方格的时候显示惊讶的表情表情,踩中地雷的时候显示悲哀的表情表情,当你成功排除了所有雷,就会显示酷的表情表情

5、在你翻开第一个方块起,计算器就开始计时,直到你成功排掉所有地雷或者踩中地雷的时候就结束计时。


游戏规则与玩法

游戏规则

扫雷就是要把所有非地雷的格子揭开即胜利,踩到地雷格子就算失败;
  • 游戏主区域由很多个方格组成;

    • 使用鼠标左键随机点击一个方格,方格即被打开并显示出方格中的数字;
    • 方格中数字则表示其周围的8个方格隐藏了几颗雷;
    • 如果点开的格子为空白格,即其周围有0颗雷,则其周围格子自动打开,如果其周围还有空白格,则会引发连锁反应;
    • 在你认为有雷的格子上,点击右键即可标记雷,如果不能确定,可以双击右键即标记问号;
    • 如果一个已打开格子周围所有的雷已经正确标出,则可以在此格上同时点击鼠标左右键以打开其周围剩余的无雷格。

玩法

  • 左键单击:

    • 在判断出不是雷的方块上按下左键,可以打开该方块。
    • 如果方块上出现数字,则该数字表示其周围3×3区域中的地雷数(一般为8个格子,对于边块为5个格子,对于角块为3个格子,所以扫雷中最大的数字为8);
    • 如果方块上为空(相当于0),则可以递归地打开与空相邻的方块;如果不幸触雷,则游戏结束。
  • 右键单击:

    • 在判断为地雷的方块上按下右键,可以标记地雷(显示为小红旗)。
    • 标记地雷后重复一次右击则标记(?),需要一次或两次操作右击来取消标雷)。
  • 双击:

    • 同时按下左键和右键完成双击。
    • 当双击位置周围已标记雷数等于该位置数字时操作有效,相当于对该数字周围未打开的方块均进行一次左键单击操作。
    • 地雷未标记完全时使用双击无效。若数字周围有标错的地雷,则游戏结束。

需求分析

  1. 扫雷的左键逻辑。扫雷中鼠标左键被用来打开当前地图上的方块,但是如果你仔细研究,就会发现方块被打开发生在鼠标左键抬起之后,而不是鼠标左键按下的时候,这一点非常重要。
  2. 如果在已经开启的方块上点击鼠标是没有任何作用的,并且如果方块上方被标记为旗帜,则该方块也无法被鼠标左键开启,这也是为了防止误操作导致游戏意外结束。
  3. 如果游戏在初始状态,鼠标左键的抬起事件会触发了雷区(或者称之为地图)的初始化以及方块打开操作,并开始计时。如果游戏处于运行状态,则要判断点击的位置是否为地雷,如果是地雷直接结束,否则执行默认的方块打开操作。
  4. 鼠标右键主要是用来标记当前方块的属性,是地雷(旗帜)还是不确定(问号),这里需要注意的是标记的过程中,是鼠标点击的时候就进行了,而不是按键抬起之后。随着方块标记的转变,地雷的显示数量也随之改变。这里还有一个小细节,就是鼠标的右键操作并不会导致游戏开始计时,换句话说右键操作并不会让游戏进入运行状态。
  5. 自动打开操作是扫雷游戏的基本规则。如果在双击(左右键)的位置存在一个数字,且周围 8 个方块上方已经被标记上了和数字相同的旗帜,则同时点击鼠标左右键会自动打开周围未标记的方块。方块被打开是在鼠标弹起操作后,双击按下只是显示相关方块的背景,给人的效果是方块被按下去。统计点击位置周围的标记数量,标记数量和显示数字一致的话,打开剩余方块。

这里有个小细节,就是打开的时候并不是仅仅打开周围的 8 个方块,如果这 8 个方块中存在空白的情况,会触发成片开启的情况。

03923-zzyakp41ln.png

软件功能框架图

中心主题.png


0

评论

博主关闭了所有页面的评论