Gameplay Ability System(普通攻击能力)

一、创建所有能力的基类TestBaseGameplayAbility
1、在UE里新建C++,路径填写新的文件夹名来在C++Classes目录下同时创建新的文件夹
在这里插入图片描述
2、注意,创建完成后可能会报错,是因为CPP文件里引用的路径名错了,删除新建文件夹名即可在这里插入图片描述
在这里插入图片描述
3、把学习能力那一篇里的AquireAblility函数参数类型改成新的基类
TestCharacter.h:

#include "项目名/Gameplay/TestBaseGameplayAbility.h"

void AquireAbility(TSubclassOf<TestBaseGameplayAbility> Ability);

TestCharacter.cpp:

void ATestCharacter::AquireAbility(TSubclassOf<TestBaseGameplayAbility> Ability)

二、创建基类TestBaseGameplayAbility的蓝图类,作为所有能力蓝图的基类
在这里插入图片描述
命名为GAB_TestBaseGameplayAbility

三、创建普通攻击蓝图类GAB_PlayerAttack, 继承自上面创建的GAB_TestBaseGameplayAbility蓝图基类
在这里插入图片描述
1、蓝图说明
Event Activate Ability:激活能力时调用
Event OnEndAbility:能力结束时调用
Was Cancelled:是否因为取消而结束能力(打断?人为取消?)
2、激活能力时打印测试
在这里插入图片描述
3、在角色蓝图BP_TestBaseCharacter里编写逻辑,选择创建好的GAB_PlayerAttack能力蓝图
在这里插入图片描述
4、在BP_TestPlayerController蓝图类中编写点击鼠标左键调用普攻的逻辑
在这里插入图片描述
5、注意继承自BP_TestBasePlayerController蓝图类的BP_TestPlayer类中的BeginPlay事件要调用父类的BeginPlay事件
在这里插入图片描述
6、运行输出Hello
在这里插入图片描述

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值