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

C++/SDL 进阶游戏开发 —— 双人塔防(代号:村庄保卫战 19)

在这里插入图片描述
在这里插入图片描述
🎁个人主页:工藤新一¹

🔍系列专栏:C++面向对象(类和对象篇)

🌟心中的天空之城,终会照亮我前方的路

🎉欢迎大家点赞👍评论📝收藏⭐文章


文章目录

    • 二十八、EnemyManager敌人与子弹碰撞实现
      • 28.1处理子弹碰撞
      • 28.2金币生成功能
      • ###28.3 子弹碰撞处理逻辑深度解析
    • 二十九、状态栏界面组件实现
      • 29.1成员字段和更新方法
      • 29.2渲染方法和组件定位
      • 29.3设置初始位置
      • 29.4逻辑说明


二十八、EnemyManager敌人与子弹碰撞实现

28.1处理子弹碰撞

在这里插入图片描述


28.2金币生成功能

在这里插入图片描述


完备逻辑:

在这里插入图片描述


###28.3 子弹碰撞处理逻辑深度解析

在这里插入图片描述


二十九、状态栏界面组件实现

将数据显示在界面上

29.1成员字段和更新方法

在这里插入图片描述


在这里插入图片描述


29.2渲染方法和组件定位

在这里插入图片描述


29.3设置初始位置

回到 game_manager.h 引入 status_bar.h 头文件

在这里插入图片描述


在更新数据和渲染时调用,成员变量 status_bar

在这里插入图片描述


在这里插入图片描述


初始化位置

在这里插入图片描述


运行效果:

在这里插入图片描述

我们发现能量条不存在


纠正:

在这里插入图片描述

在这里插入图片描述

依然无法显示能量条


Debug的一个重要思路是:

  • 先分析数值初始化/定义是否正确
  • 再判断逻辑

​ 当我们发现,我们的能量条的填充物并没有显示时,我们的第一反应优先锁定定义阶段是否存在问题:

  • Ctrl + f:color_mp_bar_foreground

在这里插入图片描述


最终我们发现,对于 color_mp_bar_foreground 所初始化的透明度存在问题,应为:255 - 不透明

在这里插入图片描述

这样就是我们想要的结果了


29.4逻辑说明

在这里插入图片描述


在这里插入图片描述

🌟 各位看官好我是工藤新一¹呀~

🌈 愿各位心中所想,终有所致!

http://www.dtcms.com/a/169328.html

相关文章:

  • 快速搜索与管理PDF文档的专业工具
  • 《windows GCC 版本升级到9以上》
  • 工业传动核心部件深度剖析:丝杆升降机与气缸的技术特性及选型指南
  • 接口测试——HTTP状态码
  • LabVIEW软件设计锂电池故障模拟检测
  • BOSS的收入 - 华为OD机试(A卷,C++题解)
  • Linux:如何查看Linux服务器的磁盘、CPU、内存信息?
  • 深挖Java之:运算符与输入器
  • K8S自动弹性伸缩机制详解
  • toLua笔记
  • WebRTC 服务器之Janus概述和环境搭建
  • mysql主从复制搭建,并基于‌Keepalived + VIP实现高可用
  • LeetCode //C - 696. Count Binary Substrings
  • 多模态大语言模型arxiv论文略读(五十七)
  • CSS 预处理器 Sass
  • 【SAP】FISL的应用
  • Android Compose 物联网(IoT)UI 组件库封装指南
  • 《Qt C++ 项目中升级 GCC 版本的完整指南》
  • 【JavaScript】性能优化:打造高效前端应用
  • 如何在WORD WPS中输入英语音标 批量给英语标注音标
  • 基于STM32的智能摇头风扇设计(WIFI+语音控制)
  • 【计算机视觉】三维重建: MVSNet:基于深度学习的多视图立体视觉重建框架
  • npm pnpm yarn 设置国内镜像
  • 音视频开发成长之路与音视频知识总结
  • 如何解决 403 错误:请求被拒绝,无法连接到服务器
  • 介绍 PHP-FPM 和 Python WSGI
  • 【c++】模板详解
  • PyTorch学习之张量(Tensor)(一)
  • 嵌入式硬件篇---STM32F103C8T6STM32F103RCT6
  • 用单目相机和apriltag二维码aruco实现单目定位