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逻辑说明
🌟 各位看官好,我是工藤新一¹呀~
🌈 愿各位心中所想,终有所致!