函数设计 要求:对创建的void playGame()函数贴出对应代码和注释,代码为:void playGame() { initgraph(WIN_WIDTH, WIN_HEIGHT);//创建窗口 init();////开始界面函数 BeginBatchDraw();//开始批量绘图 while (1) { userKey();//用户输入移动、操作 BulletMove();//更新子弹位置 createEnemy();//创建敌机 enemyMove();//更新敌机位置 colliDetec();//碰撞检测 bkRemove();//游戏背景的滚动 drawImage();//绘制背景、玩家飞机、敌机、子弹 drawText();//剩余生命值、得分 FlushBatchDraw();//执行未完成的绘制任务 } EndBatchDraw();//结束批量绘制,并执行未完成的绘制任务 }
时间: 2023-09-11 18:08:38 浏览: 136
C语言课程设计图形函数介绍
以下是对创建的void playGame()函数的代码和注释:
```
void playGame()
{
initgraph(WIN_WIDTH, WIN_HEIGHT); // 创建窗口
init(); // 调用开始界面函数
BeginBatchDraw(); // 开始批量绘图
while (1)
{
userKey(); // 处理用户输入,包括移动、操作等
BulletMove(); // 更新子弹位置
createEnemy(); // 创建敌机
enemyMove(); // 更新敌机位置
colliDetec(); // 碰撞检测
bkRemove(); // 更新游戏背景的位置
drawImage(); // 绘制背景、玩家飞机、敌机、子弹等图形
drawText(); // 绘制剩余生命值和得分等文本信息
FlushBatchDraw(); // 执行未完成的绘制任务
}
EndBatchDraw(); // 结束批量绘制,并执行未完成的绘制任务
}
```
注释如下:
1. `void playGame()`:函数名为`playGame`,返回类型为`void`,表示该函数不返回任何值。
2. `initgraph(WIN_WIDTH, WIN_HEIGHT)`:使用图形库创建窗口,宽为`WIN_WIDTH`,高为`WIN_HEIGHT`。
3. `init()`:调用开始界面函数,初始化游戏。
4. `BeginBatchDraw()`:开始批量绘图,将所有绘图操作缓存起来,减少闪烁。
5. `while (1)`:游戏主循环,持续执行直到游戏结束。
6. `userKey()`:处理用户输入,包括移动、操作等。
7. `BulletMove()`:更新子弹位置。
8. `createEnemy()`:创建敌机。
9. `enemyMove()`:更新敌机位置。
10. `colliDetec()`:检测碰撞,判断玩家是否被敌机击中。
11. `bkRemove()`:更新游戏背景的位置,实现背景图的滚动效果。
12. `drawImage()`:绘制游戏中的图形,包括背景、玩家飞机、敌机、子弹等。
13. `drawText()`:绘制游戏中的文本信息,包括剩余生命值和得分等。
14. `FlushBatchDraw()`:执行未完成的绘制任务,完成批量绘图。
15. `EndBatchDraw()`:结束批量绘制,并执行未完成的绘制任务。
阅读全文