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

该博客介绍了如何在Unreal Engine中创建一个独立于NPC的血条组件。通过继承WidgetComponent创建BP_NPCHPComponent,设置CurrentHp和MaxHp属性,并在组件Tick中更新血条显示。同时,提供了开始和停止绘制血条的事件,以及血条变化事件。在控件蓝图WBP_HP中设计血条UI,通过滑条显示HP,并与NPC的血量同步。最后,进行了测试,确保在NPC受到伤害时血条能正确减少。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

功能:只要为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点血。
在这里插入图片描述

在这里插入图片描述

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

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值