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);
        }
    }
}
相关推荐
Interview Aid1124 小时前
TikTok OA 四题分享|半小时内 AC,题目基本都是实现题
java·开发语言·算法·面试·职场和发展
CoderIsArt11 小时前
C#中UI 线程与 Dispatcher
开发语言·ui·c#
AI情绪识别开源14 小时前
检信 ALLEMOTION OS 加密打包可执行程序 — 全面测试报告版本: v1.3功能测试 / 性能测试 /
开发语言·数据结构·人工智能·功能测试
「QT(C++)开发工程师」15 小时前
C++ auto 用法详解
开发语言·c++
OPEN-F15 小时前
C++STL教程:容器适配器与实用工具
开发语言·c++
yaoxin52112315 小时前
507. Java 反射 - 在 BeanFactory 中实现依赖注入
java·开发语言
OPEN-F15 小时前
C++模板教程:变参模板、折叠表达式与SFINAE
java·开发语言·c++
有点。15 小时前
C++二叉搜索树进阶
开发语言·c++
HugoStudio_SWAN15 小时前
【擦除重绘】C++ 控制台动画:弹跳 Logo DVD 屏保效果
开发语言·c++·学习·程序人生