UE4 学习笔记(十四)NPC血条组件

功能:只要为NPC添加血条组件,即可为NPC添加一根血条。并附带CurrentHp和MaxHp两个属性,且始终朝向摄像机。
目的:让NPC与血条解耦,不必将血条的逻辑写到NPC中,防止NPC蓝图中的蓝图量过大,导致混乱。

第一步:生成一个继承自WidgetComponent的BP_NPCHPComponent。
在这里插入图片描述
第二步:声明两个整型变量CurrentHp和MaxHp。
在这里插入图片描述
第三步:在组件Tick中写下如下蓝图:
在这里插入图片描述
第四步:提供给外部停止绘制UI和开始绘制UI的事件,血条改变事件。

在这里插入图片描述在这里插入图片描述

第五步:新建一个控件蓝图,取名:WBP_HP
在这里插入图片描述
第六步:在WBP_HP中新建一个滑条,改名HPBar。填充颜色改为红色,百分比设置为0.5。
在这里插入图片描述
在这里插入图片描述
第七步:新建两个浮点变量:CurrentHp和MaxHp,并为百分比绑定一个函数,
在这里插入图片描述
在这里插入图片描述第八步:回到BP_NPCHPComponent,打开类默认值,修改CurrentHp和MaxHp为100,控件类为WBP_HP,绘制大小为(150,20)。
在这里插入图片描述
第九步:将开始事件改为如下图所示:
在这里插入图片描述
到这里,NPCHp组件就完成了所有功能。下面开始测试。

测试步骤:创建一个Actor,添加StaticMesh,和BP_NPCHPComponent,调整BP_NPCHPComponent的位置。并在开始的时候,尝试扣除20点血。
在这里插入图片描述

在这里插入图片描述

最终运行结果:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_41487299/article/details/121025380