C语言制作消消乐游戏(2)

2.构建初始方块数组

(1)宏定义初始化方块在主界面中的数量

复制代码
#define ROW              16//小方块在主界面的行
#define COL              16//小方块在主界面的列

(2)定义一个结构体类型表示方块

cpp 复制代码
//定义一个结构体类型表示方块
struct block
{
	int type;//方块类型,0:表示空白
	int x, y;
	int row, col;//行,列
	int match;//匹配次数
	int tmd;//透明度:0-255 255表示不透明,0表示完全透明
};

(3)定义了一个二维数组 map,用来存储游戏地图中的"块"

cpp 复制代码
struct block map[ROW + 2][COL + 2];

(4)地图在屏幕上的绘制偏移量

cpp 复制代码
const int off_x = 17;
const int off_y = 274;
const int block_size = 20;

(5)初始化游戏地图,为每个方块设置属性和屏幕位置

cpp 复制代码
	for (int i = 1; i <= ROW; i++) {
		for (int j = 1; j <= COL; j++)
		{
			map[i][j].type = 1+ rand() % 15;
			map[i][j].row = i;
			map[i][j].col = j;
			map[i][j].x = off_x + (j + 1) * (block_size + 2);//调整方块位置
			map[i][j].y = off_y + (i - 1) * (block_size+2 );
			map[i][j].match = 0;
			map[i][j].tmd = 255;
		}
	}
相关推荐
AI科技星11 小时前
第四卷:橡皮泥江湖(拓扑学)
c语言·开发语言·网络·量子计算·agi·拓扑学
2601_9516438811 小时前
关于C语言中getchar()的详细使用
c语言·输入输出·getchar()·eof·文件结束符
浮尘笔记11 小时前
Go实现大文件异步流式采集引擎
开发语言·后端·golang
yugi98783811 小时前
基于C#实现数字识别率的OCR方案
开发语言·c#·ocr
小七在进步11 小时前
数据结构:线性表之单链表
c语言·数据结构
星越华夏11 小时前
python中四种获取文件后缀名的方法
开发语言·python
鱼子星_12 小时前
【数据结构】排序的拓展——快速排序的生态多样性与归并排序沾染文件操作
c语言·数据结构·算法
javajenius12 小时前
Pixi:用 Rust 重写 Conda 体验的包管理工具
开发语言·其他·rust·conda
神明不懂浪漫12 小时前
【第二章】Java中的数据类型,运算符与程序逻辑控制
java·开发语言·经验分享·笔记
laowangpython12 小时前
tokio-rstracing:Rust 可观测性的标准答案
开发语言·后端·其他·rust