ue5 伤害插件

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

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

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

创建结构体,S_DamageInfo

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

Heal函数为治疗函数

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

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

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

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

接口中的函数如图所示

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

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

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

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

相关推荐
1uther9 小时前
Unity核心概念⑨:Screen
开发语言·游戏·unity·c#·游戏引擎
2501_918126919 小时前
用html5写一个flappybird游戏
css·游戏·html5
红红大虾14 小时前
Defold引擎中关于CollectionFactory的使用
游戏开发
惊鸿.Jh21 小时前
3227. 字符串元音游戏
游戏
wanhengidc2 天前
手机云服务是什么意思?
运维·网络·安全·游戏·智能手机
平行云2 天前
赋能数字孪生:Paraverse平行云实时云渲染平台LarkXR,提供强大的API与SDK用于二次开发和深度集成
3d·unity·ue5·webgl·实时云渲染·云xr
伐尘2 天前
【CE】图形化CE游戏教程通关手册
前端·chrome·游戏·逆向
脚踏实地,坚持不懈!3 天前
Android,Jetpack Compose,坦克大战游戏案例Demo
android·游戏
过河卒_zh15667663 天前
9.12AI简报丨腾讯投资AI游戏平台,B站开源AniSora V3
人工智能·算法·游戏·aigc·算法备案·生成合成类算法备案
wanhengidc3 天前
服务器内存不足会造成哪些影响?
运维·服务器·网络·游戏·智能手机