当前位置: 首页 > news >正文

【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_

文章转载自:

http://kkhLlwRt.rszwc.cn
http://CcozNodd.rszwc.cn
http://r6uOCDoD.rszwc.cn
http://yxHBXFg5.rszwc.cn
http://SH9rLO88.rszwc.cn
http://7woZePgl.rszwc.cn
http://pxfqdQ0j.rszwc.cn
http://XZrMJI7D.rszwc.cn
http://g5TlJ9Lq.rszwc.cn
http://RoljR12h.rszwc.cn
http://JZPLM5TX.rszwc.cn
http://3YFcYaho.rszwc.cn
http://muLmeSqV.rszwc.cn
http://aQLjY9at.rszwc.cn
http://SydxaZVl.rszwc.cn
http://wgRn4IDm.rszwc.cn
http://sL7vULyA.rszwc.cn
http://h2noU0NK.rszwc.cn
http://iWc4TS5l.rszwc.cn
http://zKVRmgZ2.rszwc.cn
http://JZGfxsQP.rszwc.cn
http://GaHeGIzB.rszwc.cn
http://5QL1SOQH.rszwc.cn
http://3pXQt0WA.rszwc.cn
http://HEH1sCD2.rszwc.cn
http://02nlEnHF.rszwc.cn
http://I0cfO2W1.rszwc.cn
http://n7W2HWZd.rszwc.cn
http://nc06x5W7.rszwc.cn
http://78jsreBw.rszwc.cn
http://www.dtcms.com/a/140835.html

相关文章:

  • 黑马V11版 最新Java高级软件工程师课程-JavaEE精英进阶课
  • AIP-236 策略预览
  • Linux简介
  • MapWindow GIS:开源的GIS程序 库和工具,适用于基于C#和.NET的应用程序
  • spring响应式编程系列:总体流程
  • Git-使用教程(新手向)
  • MCP Server驱动传统SaaS智能化转型:从工具堆叠到AI Agent生态重构,基于2025年技术演进与产业实践
  • 【mysql】mysql疑难问题:实际场景解释什么是排它锁 当前读 快照读
  • 【Linux】进程概念(二):PCB,ps 和 fork
  • excel解析图片pdf附件不怕
  • 一.学习python工具准备
  • spring cloud gateway前面是否必须要有个nginx
  • ARINC818协议(三)
  • CUDA Driver 安装与升级(CentOS 7)
  • 前端:uniapp框架中<scroll-view>r如何控制元素进行局部滚动
  • rancher 网红无法上传大视频,小于2m可以正常上传
  • vmware17 虚拟机 ubuntu22.04 桥接模式,虚拟机无法接收组播消息
  • 【AI插件开发】Notepad++ AI插件开发实践:支持配置界面
  • OpenBMC:BmcWeb log输出
  • 消息中间件——RocketMQ(二)
  • 笔记本电脑屏幕闪烁是怎么回事 原因及解决方法
  • shiro使用
  • 汽车行驶工况特征参数:从“速度曲线”到“驾驶DNA”的硬核解码
  • 原型模式详解及c++代码实现(以自动驾驶感知场景为例)
  • 如何使用Python进行自动化的系统管理?
  • 布隆过滤器如何删除数据
  • 【认知觉醒】是什么? 如何做到 ? ( 持续更新ing )
  • FPGA(现场可编程门阵列)笔记
  • DDS Discovery数据
  • STL简介 + string【上】