【RK3588 嵌入式图形编程】-SDL2-扫雷游戏-结束和重新开始游戏
结束和重新开始游戏
文章目录
- 结束和重新开始游戏
- 1、概述
- 2、更新Globals.h
- 3、触发GAME_WON和GAME_LOST事件
- 4、对游戏结束的反应
- 5、重启游戏
- 6、创建新游戏按钮
- 7、完整代码
- 8、总结
在本文中,将实现胜负检测并添加重新开始功能以完成游戏循环。
1、概述
在本文中,我们将更新我们的游戏以检测并响应玩家的胜负情况。
- 为了获胜,玩家必须清理所有没有炸弹的单元格。
- 如果玩家清理了一个有炸弹的单元格,他们就输了。
让我们开始吧!
2、更新Globals.h
当玩家获胜或失败时,我们将禁用所有单元格并揭示地雷的位置。如果玩家赢了,我们将以绿色突出显示这些单元格,但如果玩家输了,我们将以红色突出显示它们。
让我们将这些颜色添加到我们的Globals.h中。我们还将注册事件,以便在发生胜负情况时进行通信:
// Globals.h// ...namespace UserEvents{// ...inline Uint32 GAME_WON =SDL_RegisterEvents(1);inline Uint32 GAME_LOST =SDL_RegisterEvents(1);
}namespace Config{// ...inline constexpr SDL_Color BUTTON_