基于QT的扫雷游戏设计与实现
以下是资料介绍,如需要完整的请充值下载. 本资料已审核过,确保内容和网页里介绍一致. 密 惠
无需注册登录,支付后按照提示操作即可获取该资料.
无需注册登录,支付后按照提示操作即可获取该资料.
资料介绍:
摘 要
本论文研究的是以QT为开发环境,设计并开发一款扫雷游戏,其功能类似于Windows操作系统自带的扫雷游戏。实现的功能有界面的规划,游戏难度的调整,计时器,鼠标事件以及游戏完成的判定。
论文首先介绍了制作游戏的整体思路及整个游戏设计的流程规划,然后介绍了雷区的布置及地雷随机产生的实现方法;重点介绍了在游戏过程中各事件的处理,其中又以鼠标事件和清除未靠近地雷区方块这两方面最为最要,鼠标事件是利用鼠标所发出的信息了解使用者的意图,进而做出相对应的动作,而清除未靠近地雷区方块由于引进了“扩散”这个概念而使其简单化。
本次设计只是完成了扫雷游戏的基本功能,在细节方面仍然有待完善。
关键词:扫雷; QT; 事件; 扩散
Design And Implementation Of Minesweeping Game Based On The QT Platform
Abstract
What my thesis research for is basic on the develop environment of QT, design and develop a mine game,its function is similar to the mine games of the Windows Operating System .
The thesis has introduced the layout of mined areas and the method of how to create the mines at random. It use vairies of components in QT and the combination of some simple calculations; the thesis lays emphasis on introducing the processing of each event in the game. Among these events ,the mouse event and the event of clearance of the area which isn’t close to the mine field are much more important.The theory of mouse event is that the intention of user is learned by the information sent out by the mouse and then the program runs according to the information .The other event is simplified by the introduction of the concept of spread.
This design has been completed the basic function of mine game. The details still need to be improved.
Key words: Mine game; QT; Affairs;Spread
设计构想
相信大多数使用Windows操作系统的使用者,对这款游戏都不陌生。这款游戏不止操作简单,规则也不难,再加上游戏速度的控制机制得宜,让整个游戏在操作过程中充满了快乐与紧张的气氛。除了游乐当中能带给使用者快乐之外,游戏的设计内容无形中也不断训练使用者的逻辑思考能力,对于依靠高度脑力工作的现代人,都可以通过这个游戏,不时的检验一下自己,所以我们不难发现,在各种可携带的电子产品上都有这款游戏的踪影。
在设计之前,我们先来了解这款游戏的规则。
在不掀开任何藏有地雷的方块情况下,以最快的速度找出所有的地雷。如果在掀开方块的过程中,不小心翻开(踩到)藏有地雷的方块,则宣告失败(游戏结束),惟有将所有不含地雷的方块掀开,游戏才算成功。
游戏的操作方面主要以鼠标为主,当鼠标指针对准未翻开的方块按下左键时即表示翻开方块,当鼠标指针对准未翻开的方块按下右键时即表示标记或取消标记地雷,反复按下右键则方块会以标记,取消标记两者之间不断循环。游戏者可以通过地雷区内的数字提示了解以数字为中心的其周边八个方格内所含的地雷数,假若翻开的方块显示数字“3”,则表示以其为中心的周边方块内藏有3个地雷。
当按下的方块不是地雷,且周边八个方块也都没有地雷时,方块会以被翻开方块的八个方向将空白方块翻开。
3.2 流程规划
流程规划大致上可以分为三个部分,分别为:游戏开始阶段、游戏进行阶段和游戏结束阶段。
游戏开始时,会以游戏者最后一次设定的地雷区大小为范围画出地雷区,同时会产生地雷并且开始计时。游戏进行阶段主要就是如何判断按下的方块是非地雷时的处理,这也是整个游戏的技术核心,我们可以通过扩散的观念来检查周边的方块是否含有地雷及是否继续往外翻开,以及鼠标右键的标记功能的实现。游戏结束阶段,判定游戏是否结束有两种情况,第一种是没有踩到雷,成功完成游戏,会弹出提示框提示赢得游戏,如果创造了新的纪录,则会弹出提示框提示输入姓名。第二种是踩到雷,也就是游戏失败,同样会弹出提示框来提示输掉游戏。
目录
摘 要 i
Abstract ii
第1章 绪论 1
1.1研究背景 1
1.2 开发的目的及意义 1
1.3开发工具的选择 1
第2章 QT架构与平台搭建 2
2.1 QT介绍 2
2.1.1 QT语言的特性 2
2.1.2 QT的优势 2
2.1.3 QT/Embedded介绍 3
2.2 QT的架构 4
2.3 QT的组成 4
2.4 QT开发平台的搭建 6
2.5 QT SDK及QT Creator工具的安装 6
第3章 游戏的总体分析与设计 8
3.1 设计构想 8
3.2 流程规划 8
3.3 画面规划 10
第4章 游戏的详细设计 11
4.1 游戏的开始 11
4.2 雷区分布 12
4.3 游戏中主要模块的介绍与使用 14
4.3.1鼠标事件 14
4.3.2地雷及雷区表面探测情况 15
4.3.3清除未靠近地雷的方块 16
4.3.4游戏难度的选择 17
4.4 游戏的判断 19
4.4.1游戏成功完成 19
4.4.2 游戏进行失败 21
4.5 重新进行游戏 22
4.6 关于游戏 23
4.7 英雄榜 24
4.8 游戏测试及结果 25
总结 26
参考文献 27
致 谢 28
外文原文 29
外文翻译 42