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

3.绘制初始方块数组

(1)宏定义方块素材种类

复制代码
#define BLOCK_TYPE_COUNT 15//素材种类

(2)定义了一个 IMAGE 类型的数组,存储所有类型方块的图片资源

cpp 复制代码
IMAGE imgBlocks[BLOCK_TYPE_COUNT];//方块图片

(3)加载方块图片素材

cpp 复制代码
	//调用方块素材
	char name[64];
	for (int i = 0; i < BLOCK_TYPE_COUNT; i++) {
		//res/1.png......res/7.png
		sprintf_s(name, sizeof(name), "res/消消乐-素材/res/%d.png", i + 1);
		loadimage(&imgBlocks[i], name,block_size,block_size,true);

	}

	//配置随机数的随机种子
	srand(time(NULL));

(4)绘制所有方块

cpp 复制代码
for (int i = 1; i <= ROW; i++) {
    for (int j = 1; j <= COL; j++) {
        if (map[i][j].type)  // 如果方块类型不为0(存在方块)
        {
            IMAGE* img = &imgBlocks[map[i][j].type - 1];  // 获取对应图片
            putimageTMD(map[i][j].x, map[i][j].y, img, map[i][j].tmd);
        }
    }
}
相关推荐
赤生云电竞14 分钟前
云游戏边缘节点部署:机房选址与网络拓扑优化实践——接入延迟、VXLAN与GPU虚拟化选型
数据库·游戏
4ever.ov016 分钟前
精学C++第一站 从命名空间到引用:C++入门核心语法全梳理(13000字长文)
开发语言·c++·clion
小杨互联网17 分钟前
Go 现代 CLI 工具离线镜像合集
开发语言·后端·golang·开源·go·命令行
揽星河..25 分钟前
【C语言】数组
c语言·开发语言·算法
FRing0327 分钟前
JavaScript入门到精通三十三(异常处理、call方法、apply方法、bind方法、防抖、节流)
开发语言·前端·javascript
呆呆敲代码的小Y32 分钟前
【实战精选面试题】C# 面试题详细解答,按难易程度排序
android·java·游戏·c#·游戏开发·unity面试题·c#面试题
geovindu34 分钟前
rust: Semaphore Pattern
开发语言·后端·设计模式·rust·代理模式·企业级信号量模式·同步型模式
水饺编程41 分钟前
第2章:Linux 基础,制作【.tar.xz】压缩包文件
linux·c语言·汇编
纪念 2291 小时前
C++ 算法(模拟)
开发语言·c++·算法
揽星河..1 小时前
【C语言】函数
c语言·算法