ue5 伤害插件

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

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

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

创建结构体,S_DamageInfo

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

Heal函数为治疗函数

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

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

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

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

接口中的函数如图所示

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

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

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

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

相关推荐
LcGero3 小时前
Lua + Cocos Creator 实战:用 Lua 驱动 UI 与游戏逻辑
游戏·ui·lua
huwuhang4 小时前
电视盒子刷机emuelec游戏系统 辣娃娃战神系统4.7.1-57g-最终版-V2.1(2026更新)
游戏·电视盒子
芙莉莲教你写代码4 小时前
Flutter 框架跨平台鸿蒙开发 - 赛车游戏
flutter·游戏
CDN3605 小时前
游戏盾不生效、攻击防不住?策略校验与节点切换教程
网络·游戏
CDN3605 小时前
iOS/Android 集成游戏盾审核被拒?权限与合规配置修复
android·游戏·ios
风酥糖21 小时前
Godot游戏练习01-第24节-多人游戏暂停菜单,游戏优化
游戏·游戏引擎·godot
CDN3601 天前
游戏盾 SDK 混淆后失效?豁免规则与打包配置解决方案
运维·游戏·网络安全
huwuhang1 天前
Winkawaks街机游戏模拟器整合ROM版 1.65 汉化修正完整版 2026.03.30
android·游戏·游戏机
智算菩萨1 天前
【Pygame】第20章 从0到1构建贪吃蛇:基于Pygame的游戏架构与状态机设计实战(有超详细中文注释)
python·游戏·pygame
wanhengidc1 天前
云手机 性能不受限 数据安全
服务器·网络·安全·游戏·智能手机