vs2013扫雷程序


visual studio 2013 win32工程实现扫雷游戏程序。
资源截图
代码片段和文件信息
#include “stdafx.h“
#include “MineMap.h“
#include 

CMineMap::CMineMap()
: nMime(0)
 winf(FALSE)
 rMine(0)
{
mx = 20; my = 13;
nMime = 50;
}


CMineMap::~CMineMap()
{
}

void CMineMap::Create()
{
Map = new int*[mx];
int i j;
for (i = 0; i < mx; i++)
{
Map[i] = new int[my];
}
for (i = 0; i < mx; i++)
for (j = 0; j < my; j++)
Map[i][j] = 100;
srand(time(NULL));
for (i = 0; i < nMime; i++)
{
int m = rand() % mx;
int n = rand() % my;
if (Map[m][n] != 99)
Map[m][n] = 99;
else
i--;
}
for (i = 0; i < mx; i++)
for (j = 0; j < my; j++)
{
if (Map[i][j] == 99)
{
int m n;
for (m = -1; m < 2; m++)
for (n = -1; n < 2; n++)
{
if ((i + m >= mx) || (j + n >= my) || (i + m<0) || (j + n<0) || (Map[i + m][j + n] == 99))
continue;
Map[i + m][j + n]++;
}
}
}
winf = 1;
rMine = nMime;
first = 1;
timer = 0;
}


void CMineMap::LClinck(int m int n CRect*rc)
{
if (m >= mx || n >= my || m < 0 || n < 0 || Map[m][n] <= 90)
return;
if (m * 20 + 20>rc->right)
rc->right = m * 20 + 20;
if (m * 20 < rc->left)
rc->left = m * 20;
if ((n + 2) * 20 + 20 > rc->bottom)
rc->bottom = (n + 2) * 20 + 20;
if ((n + 2) * 20 < rc->top)
rc->top = (n + 2) * 20;
if (Map[m][n] >= 101 && Map[m][n] <= 108)
{
Map[m][n] -= 100;
first = 0;
return;
}
if (Map[m][n] == 100)
{
Map[m][n] -= 100;
LClinck(m - 1 n rc);
LClinck(m + 1 n rc);
LClinck(m n - 1 rc);
LClinck(m n + 1 rc);
LClinck(m - 1 n - 1 rc);
LClinck(m + 1 n - 1 rc);
LClinck(m - 1 n + 1 rc);
LClinck(m + 1 n + 1 rc);
}
if (Map[m][n] == 99)
{
if (first)
{
rMine--;
int a b t = 0;
for (a = -1; a < 2; a++)
for (b = -1; b < 2; b++)
{
if ((a + m < mx) && (b + n < my) && (a + m >= 0) && (b + n >= 0) && (a || b))
{
if (Map[a + m][b + n] > 99)
Map[a + m][b + n]--;
if (Map[a + m][b + n] == 99)
t++;
}
}
first = 0;
Map[m][n] = 100 + t;
LClinck(m n rc);
return;
}
int i j;
for (i = 0; i < mx; i++)
for (j = 0; j < my; j++)
{
if (Map[i][j] == 99)
Map[i][j] = -1;
if (Map[i][j]>49 && Map[i][j] < 60)
Map[i][j] = -2;
}
rc->bottom = (my + 2) * 20;
rc->right = mx * 20;
rc->left = 0;
rc->top = 0;
winf = 0;
}

}

void CMineMap::Onrbtdown(int m int n)
{
if (m >= mx || m < 0 || n >= my || n < 0)
return;
if (Map[m][n]>90)
{
Map[m][n] -= 50;
rMine--;
return;
}
if (Map[m][n] > 40 && Map[m][n] < 60)
{
rMine++;
Map[m][n] += 50;
}
}


void CMineMap::Onlbtdbc(int m int n CRect*rc)
{
if (m >= mx || m < 0 || n >= my || n < 0)
return;
if (Map[m][n] == ctnflag(m n))
{
LClinck(m - 1 n rc);
LClinck(m + 1 n rc);
LClinck(m n - 1 rc);
LClinck(m n + 1 rc);
LClinck(m - 1 n - 1 rc);
LClinck(m + 1 n - 1 rc);
LClinck(m - 1 n + 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2014-06-26 22:57  扫雷 - 副本
     目录           0  2014-06-26 22:52  扫雷 - 副本扫雷
     目录           0  2014-06-26 22:57  扫雷 - 副本扫雷Debug
     文件       13013  2014-06-26 22:57  扫雷 - 副本扫雷DebugMineMap.obj
     文件      149115  2014-06-26 22:57  扫雷 - 副本扫雷Debugstdafx.obj
     文件      551936  2014-06-26 22:57  扫雷 - 副本扫雷Debugvc120.idb
     文件      520192  2014-06-26 22:57  扫雷 - 副本扫雷Debugvc120.pdb
     文件        1128  2014-01-27 11:11  扫雷 - 副本扫雷Debug扫雷.Build.CppClean.log
     文件        2297  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.log
     文件       38455  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.obj
     文件     6160384  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.pch
     文件       78776  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.res
     目录           0  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.tlog
     文件       28846  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.tlogCL.read.1.tlog
     文件        3134  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.tlogCL.write.1.tlog
     文件        3962  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.tlogcl.command.1.tlog
     文件        2924  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.tloglink.command.1.tlog
     文件        6064  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.tloglink.read.1.tlog
     文件        1352  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.tloglink.write.1.tlog
     文件         850  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.tlog
c.command.1.tlog
     文件        5724  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.tlog
c.read.1.tlog
     文件         366  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.tlog
c.write.1.tlog
     文件         181  2014-06-26 22:57  扫雷 - 副本扫雷Debug扫雷.tlog扫雷.lastbuildstate
     文件        3618  2014-01-25 22:55  扫雷 - 副本扫雷MineMap.cpp
     文件         372  2014-01-25 22:20  扫雷 - 副本扫雷MineMap.h
     文件        2244  2014-01-25 13:23  扫雷 - 副本扫雷ReadMe.txt
     文件        1270  2013-07-22 01:18  扫雷 - 副本扫雷itmap1.bmp
     文件        3126  2014-01-26 15:53  扫雷 - 副本扫雷
esource.h
     文件        2998  2014-02-09 19:53  扫雷 - 副本扫雷small.ico
     文件         210  2014-01-25 13:23  扫雷 - 副本扫雷stdafx.cpp
     文件         464  2014-01-25 18:15  扫雷 - 副本扫雷stdafx.h
............此处省略16个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)