虚幻引擎UE5专用服务器游戏开发-20 添加基础能力类与连招能力

虚幻引擎UE5技能系统开发实现方法

摘要:本文介绍了虚幻引擎GameplayAbilitySystem(GAS)框架中技能系统的实现方法。主要内容包括如何创建GameplayAbility子类GA_Combo,重写ActivateAbility函数实现技能激活逻辑,使用CommitAbility检查资源条件,以及通过EndAbility处理技能结束。同时说明了如何在AbilitySystemComponent中添加技能数组,并使用GiveAbility方法授予角色初始能力。最后指出这些操作应在服务器端实施,并提供了角色类中的调用示例。

Gameplay Ability

Gameplay Ability类概览。

1.创建类:

基于CGameplayAbility创建子类:GA_Combo

2.在GA_Combo类里重写函数:

Source/Crunch/Public/GAS/GameplayAbility/GA_Combo.h:

public:
	virtual void ActivateAbility(const FGameplayAbilitySpecHandle Handle, const FGameplayAbilityActorInfo* ActorInfo, const FGameplayAbilityActivationInfo ActivationInfo, const FGameplayEventData* TriggerEventData) override;
	
这是一个虚幻引擎Gameplay Ability System (GAS)框架中用于激活技能的核心虚函数重写声明。该函数在技能被激活时调用,主要功能包括:

函数参数说明:

  • Handle:技能规格的唯一标识符

  • ActorInfo:包含施法者相关信息的结构体

  • ActivationInfo:技能激活相关信息

  • TriggerEventData:触发技能的事件数据

典型实现流程:

  • 首先调用CommitAbility检查资源/冷却条件

  • 执行技能核心逻辑(如应用GameplayEffect、播放动画等)

  • 最后调用EndAbility结束技能

注意事项:

  • 需要先检查CommitAbility返回值

  • 必须调用EndAbility来正确结束技能

  • 可以在派生类中扩展特定功能(如被动技能处理)

相关扩展:

  • 被动技能通常需要重写此函数并绑定结束回调监听

  • 交互系统(如Lyra)会在此函数中处理交互逻辑

  • 可通过GameplayTag配置输入激活方式

(1)检查两件事: 技能是否冷却中 \  法力是否足够

virtual bool CommitAbility(const FGameplayAbility
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值