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);
        }
    }
}
相关推荐
MC皮蛋侠客19 分钟前
TDengine C++ 系列(5):C/C++ 连接器——连接管理与查询 API
c语言·c++·tdengine
天空'之城28 分钟前
C 语言工业级通用组件手写 27:配置参数管理组件
c语言·eeprom·参数管理·工业级组件·掉电存储
YSL07012438 分钟前
指针习题讲解
c语言
艾莉丝努力练剑39 分钟前
【Qt:问题解决】Qt程序入口点错误修复:MinGW ABI兼容问题
java·服务器·开发语言·qt·文件系统·动静态库
wuyk5559 小时前
第2章:六步换相原理全解+STM32工程实战
c语言·开发语言·stm32·单片机·嵌入式硬件
hey_sml9 小时前
JAVA每日一学---CompletableFuture中thenApply与thenCompose区别详解
java·开发语言
萧瑟余晖11 小时前
Java深入解析篇十七之SpringCloud
java·开发语言
ttod_qzstudio11 小时前
Java 常用语法极简通关(五):类与对象——字段、方法、构造器、this 与 static
java·开发语言·python
五仁烧饼12 小时前
Unity Addressables 静默资源策略
游戏·unity·addressables
萧瑟余晖12 小时前
Java深入解析篇十七之Spring Security
java·开发语言·spring