'在coords.cls类模块中定义的两个变量
'定义了一个对象用来保存地雷的x , y轴坐标
Public mintX As Integer
Public mintY As Integer
另一个类是用来控制扫雷游戏的winmine类,其中定义了主要的属性,方法,代码如下:
'定义鼠标左键,同VB中的定义常数vbKeyLButton ,值都为1
Private Const LEFT_BUTTON As Byte = 1
'标记一个方格是否为空的标志
Private Const NONE As Byte = 0
'标记一个方格是否为一个带雷的方格
Private Const MINE As Byte = 243
'标记一个方格是否被点开
Private Const BEEN As Byte = 244
'标记一个方格是否已经被标记为一个带雷的方格
Private Const FLAGGED As Byte = 2
'标记一个方格是否被标记为一个问号,即一个存有疑问,不能确定的方格
Private Const QUESTION As Byte = 1
'定义扫雷游戏中最大和最小的地雷地图的行数和列数及其地雷个数
Private Const MIN_MINES As Byte = 10
'最小的地雷数
Private Const MIN_ROWS As Integer = 8
Private Const MIN_COLS As Integer = 8
'最小的地图行数列数
Private Const MAX_MINES As Byte = 99
'最大的地雷数
Private Const MAX_ROWS As Integer = 24
Private Const MAX_COLS As Integer = 36
'最大的地图行数列数
'设定每个方格的宽度为16个象素
Private Const mintButtonWidth As Byte = 16
'设定每个方格的宽度为16个像素
Private Const mintButtonHeight As Byte = 16
'记录玩家设定的当前游戏的水平中所包含的地雷的个数
Private mbytNumMines As Byte
'记录在当前游戏中,被玩家正确标志出来的地雷的个数
Private mbytCorrectHits As Byte
'记录在当前游戏中,被玩家标志出来的地雷的个数,包括被错误标记的
Private mbytTotalHits As Byte
'记录在当前游戏中,游戏被设定的行数和列数
Private mintRows As Integer
Private mintCols As Integer
' 记录在游戏中由玩家点击鼠标的位置,而确定的点击的方块的行数和列数
Private mintRow As Integer
Private mintCol As Integer
'是否开始一盘新游戏的标志
Public mblnNewGame As Boolean
'在正在进行的游戏中,鼠标点击事件的标志
Private mblnHitTestBegun As Boolean
'定义游戏显示的主窗体
Private mfrmDisplay As Form
' 定义一个动态的二维数组,用来保存包含地雷的方格的位置,以及那一个位置的周围有没有地雷,有多少地雷,以及那些方格被打开
Private mbytMineStatus() As Byte
'其中定义一个动态的二维数组,用来保存被标记过的方格的位置,不管这个标记是否标记正确
Private mbytMarked() As Byte
'定义一个动态的二维数组,用来保存在分布的地雷区域所有分布的地雷总数的x,y中的坐标位置
Private mbytMineLocations() As Byte
' 定义一个集合,用来存放clsCoords类对象的x ,y轴坐标位置,他们指示着游戏中被标记错误的方格的位置
Private mcolWrongLocations As New Collection
有了这些类的定义,那么在游戏的流程中我们只要用类就可以对游戏进行操作了,可以想象到剩下的工作就比较简单了,这也就是VC中MFC使用广泛的缘故。
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




