函数设计 要求:对创建的void drawImage()函数画出流程图,贴出对应代码和注释,代码为:void drawImage() { putimage(0, bk1, &image.background);// 显示背景 putimage(0, bk2, &image.background);// 显示背景 putimage(player.x, player.y, &image.playerY, SRCAND);// 显示飞机 putimage(player.x, player.y, &image.player, SRCPAINT); for (int i = 0; i < BULLET_NUM; i++) { if (bullet[i].flag) { putimage(bullet[i].x, bullet[i].y, &image.bulletY, SRCAND);// 显示子弹 putimage(bullet[i].x, bullet[i].y, &image.bullet, SRCPAINT); } } for (int i = 0; i < ENEMY_NUM; i++) { if (enemy[i].flag) { if (enemy[i].Myunion.type == SAMLL)//小型敌机 { putimage(enemy[i].x, enemy[i].y, &image.enemy1Y, SRCAND); putimage(enemy[i].x, enemy[i].y, &image.enemy1, SRCPAINT); } else if (enemy[i].Myunion.type == MEDIUM)//中型敌机 { putimage(enemy[i].x, enemy[i].y, &image.enemy2Y, SRCAND); putimage(enemy[i].x, enemy[i].y, &image.enemy2, SRCPAINT); } else //大型敌机 { putimage(enemy[i].x, enemy[i].y, &image.enemy3Y, SRCAND); putimage(enemy[i].x, enemy[i].y, &image.enemy3, SRCPAINT); } } } }
时间: 2024-02-29 09:54:53 浏览: 153
图片按比例缩放函数
这段代码是一个绘制游戏画面的函数,具体实现如下:
```c++
void drawImage() {
putimage(0, bk1, &image.background);// 显示背景
putimage(0, bk2, &image.background);// 显示背景
putimage(player.x, player.y, &image.playerY, SRCAND);// 显示飞机
putimage(player.x, player.y, &image.player, SRCPAINT);
for (int i = 0; i < BULLET_NUM; i++) {
if (bullet[i].flag) {
putimage(bullet[i].x, bullet[i].y, &image.bulletY, SRCAND);// 显示子弹
putimage(bullet[i].x, bullet[i].y, &image.bullet, SRCPAINT);
}
}
for (int i = 0; i < ENEMY_NUM; i++) {
if (enemy[i].flag) {
if (enemy[i].Myunion.type == SAMLL)//小型敌机
{
putimage(enemy[i].x, enemy[i].y, &image.enemy1Y, SRCAND);
putimage(enemy[i].x, enemy[i].y, &image.enemy1, SRCPAINT);
}
else if (enemy[i].Myunion.type == MEDIUM)//中型敌机
{
putimage(enemy[i].x, enemy[i].y, &image.enemy2Y, SRCAND);
putimage(enemy[i].x, enemy[i].y, &image.enemy2, SRCPAINT);
}
else //大型敌机
{
putimage(enemy[i].x, enemy[i].y, &image.enemy3Y, SRCAND);
putimage(enemy[i].x, enemy[i].y, &image.enemy3, SRCPAINT);
}
}
}
}
```
具体实现的功能是:
1. 显示背景图片,通过`putimage`函数实现。
2. 显示玩家飞机,同样是通过`putimage`函数实现,其中`SRCAND`和`SRCPAINT`参数表示混合效果,实现透明的效果。
3. 显示子弹,通过遍历所有子弹,判断是否被发射,如果有被发射的,则显示子弹图片,同样是通过`putimage`函数实现。
4. 显示敌机,通过遍历所有敌机,判断是否被创建,如果有被创建的,则根据敌机类型显示不同的图片,同样是通过`putimage`函数实现。
以上就是这段代码的实现和功能介绍,可以帮助我们更好地理解游戏开发中的绘图实现。
阅读全文