扫雷游戏
这周查看其它扫雷游戏的代码加上自己的理解写出了扫雷游戏,在这里我分享一下自己的经验,希望对大家有所帮助。
一.这个扫雷游戏与我们传统的扫雷没有什么区别,主要模块有
1.载入图片,使用loadimage()函数实现;
2.数据初始化即把地图的格子初始化为空,使用随机数埋雷记得加上头文件#include<time.h>
随机数的实现:srand((unsigned)time(NULL));
埋雷的实现:
for (i = 0; i < Nbomb;)
{x = rand() %Nbomb;
y = rand() %Nbomb;
if (map[y][x] != 10)
{
map[y][x] = 10;
i++; //不浪费生成雷的个数
}
}
3.画图使用putimage(x左上角坐标,y左上角坐标,图片地址)
举例:画背景图片
putimage(0,0,&background);
4.计算格子周围的8个格子中地雷的数目
int lei_num(int x,int y,int num)
{
int sum;
int nx, ny;
int lei=10;
sum = 0;
for (nx = x - 1; nx <= x + 1; nx++)
{
for (ny = y - 1; ny <= y + 1; ny++)
{
if (map[ny][nx] == lei)
{
sum++;
}
}
}
return sum;
}
5.格子为空的话就显示空格子的图片
6.格子不为空的话就显示数字的图片
例如:
void not_null(int x, int y, int lei)
{
if (lei == 1)
{
map[y][x] = 11;
}
if (lei