ue5 伤害插件

主角或敌人都能用的插件,复用性很高

首先创建以下插件、接口、类型文件

两个枚举中的参数名称,E_DamageResponse区分是各个伤害后的反应,比如不同伤害造成的动画或粒子特效等的不同,E_DamageType是伤害类型,有各种伤害类型,比如近距离伤害和爆炸伤害

创建结构体,S_DamageInfo

然后创建BPC_DamageSystem插件,并编写代码

Heal函数为治疗函数

TakeDamage函数是实现伤害和判断伤害类型等

CanbeDamage宏中的代码,IsBlocking布尔变量我默认是True

三个事件分发器是为了后续可以在玩家或敌人蓝图中编写死亡,阻挡,被攻击的反应 代码,因为这几部分在敌人和主角中都不太一样,所以后续在人物蓝图中再编写

再到主角蓝图中添加最开始创建的接口BPI_Damageable,并在左侧添加选项中添加我们创建的BPC_DamageSystem插件(图中没有标明)

接口中的函数如图所示

之后在人物蓝图中编写接口函数

之后在攻击逻辑中调用TakeDamage函数

至此主角蓝图已经编写完毕

之后在敌人蓝图添加接口和插件,再把接口中的函数照上面的主角蓝图写一下就行了,至此就完成了正常的攻击伤害逻辑,这个接口还有很多功能,在所创建的变量中也能看出来

相关推荐
上海云盾商务经理杨杨3 小时前
2026游戏盾深度解析:从被动防御到智能作战,构建DDoS免疫堡垒
网络·游戏·ddos
一个响当当的名号8 小时前
lectrue4 数据库存储
ue4
2501_9444241212 小时前
Flutter for OpenHarmony游戏集合App实战之黑白棋落子翻转
android·开发语言·windows·flutter·游戏·harmonyos
熹乐互动13 小时前
亲测有效!马年互动赛马游戏实践复盘分享
游戏
咕噜企业分发小米13 小时前
腾讯云多云管理工具如何与第三方合规工具集成以支持持续合规?
运维·服务器·游戏
2501_9444241213 小时前
Flutter for OpenHarmony游戏集合App实战之消消乐下落填充
android·开发语言·flutter·游戏·harmonyos
一起养小猫13 小时前
LeetCode100天Day16-跳跃游戏II与H指数
算法·游戏
FairGuard手游加固15 小时前
如何检测游戏直装破解
游戏
一个响当当的名号15 小时前
lectrue5 存储模型和压缩
ue5
2501_9445264217 小时前
Flutter for OpenHarmony 万能游戏库App实战 - 主题切换实现
android·开发语言·javascript·python·flutter·游戏·django