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



🎁个人主页: 工藤新一¹

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

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

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


文章目录


二十八、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逻辑说明


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

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

相关推荐
hrrrrb1 小时前
【Python】文件处理(二)
开发语言·python
先知后行。2 小时前
QT实现计算器
开发语言·qt
掘根2 小时前
【Qt】常用控件3——显示类控件
开发语言·数据库·qt
GUIQU.2 小时前
【QT】嵌入式开发:从零开始,让硬件“活”起来的魔法之旅
java·数据库·c++·qt
西阳未落5 小时前
C++基础(21)——内存管理
开发语言·c++·面试
我的xiaodoujiao6 小时前
Windows系统Web UI自动化测试学习系列2--环境搭建--Python-PyCharm-Selenium
开发语言·python·测试工具
callJJ6 小时前
从 0 开始理解 Spring 的核心思想 —— IoC 和 DI(2)
java·开发语言·后端·spring·ioc·di
超级大福宝6 小时前
使用 LLVM 16.0.4 编译 MiBench 中的 patricia遇到的 rpc 库问题
c语言·c++
wangjialelele6 小时前
Linux中的线程
java·linux·jvm·c++
hsjkdhs7 小时前
万字详解C++之构造函数析构函数
开发语言·c++