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;
		}
	}
相关推荐
布谷歌2 小时前
常见的OOM错误 ( OutOfMemoryError全类型详解)
java·开发语言
WangJunXiang62 小时前
GFS分布式文件系统
开发语言·php
民乐团扒谱机2 小时前
【微实验】基于matlab的音频提取与信号滤波处理
开发语言·matlab·音视频
SomeB1oody2 小时前
【Python深度学习】3.4. 循环神经网络(RNN)实战:预测股价
开发语言·人工智能·python·rnn·深度学习·机器学习
良木生香2 小时前
【C++初阶】:STL——String从入门到应用完全指南(1)
c语言·开发语言·数据结构·c++·算法
Bug 挖掘机2 小时前
一篇理清Prompt,Skill,MCP之间的区别
开发语言·软件测试·python·功能测试·测试开发·prompt·ai测试
寒秋花开曾相惜3 小时前
(学习笔记)4.1 Y86-64指令集体系结构(4.1.4 Y86-64异常&4.1.5 Y86-64程序)
开发语言·jvm·数据结构·笔记·学习
cyr___3 小时前
Unity教程(二十七)技能系统 黑洞技能(下)黑洞状态
学习·游戏·unity·游戏引擎
码界筑梦坊3 小时前
302-基于Python的安卓应用市场数据可视化分析推荐系统
开发语言·python·信息可视化·毕业设计·fastapi