能力系统组件(GAC) {{ currentPage ? currentPage.title : "" }}

能力系统组件(GameplayAbilityComponent)

用途:用于储存、激活角色能力系统

  • 与官方能力系统不同,插件为能力(GA)添加了执行的状态(原来分为激活、关闭状态,现在分为激活、执行、关闭),执行后才会播放蒙太奇与添加BUFF等,原来的激活则用于预定能力等

变量

描述

AbilityInstances

拥有的能力实例

ActivateAbilityInstances

激活的能力实例

ExecuteChildAbilityTag

执行子能力标签

PredetermineGameplayAbility

预定的下个能力

ExecuteGameplayAbility

正在执行的能力

bCanPredetermine

可预定能力

bPredetermineExecuteImmediately

预定能力后可立刻执行,用于收刀时追加招式

ExecuteImmediatelyAbilies

可立刻执行的能力列表,父能力执行时其子能力标签列表

PlayMontageAndWaitTask

当前蒙太奇播放任务

ChildAbilityMap

子能力地图,父能力执行时将子能力拷贝到该变量中,调用ApplyInput函数时将会从该列表中匹配下个能力

bEnableAnticheating

开启反作弊,注意,开启后将会禁用

ServerCurrentMontageSetPlayRate

ServerCurrentMontageJumpToSectionName

ServerCurrentMontageSetNextSectionName

函数

描述

ApplyPredetermineAbility(UUltimateGameplayAbility* GameplayAbility)(非公开)

应用预定能力

ClientTryExecuteAbility(FGameplayAbilitySpecHandle AbilityHandle)

客户端尝试执行能力,当能力为不可复制时将使用组件内的函数执行能力

PlayMontage_Task(UGameplayAbility* OwningAbility,FName TaskInstanceName,UAnimMontage* InMontageToPlay,float Rate ,FName StartSection,bool bStopWhenAbilityEnds,float AnimRootMotionTranslationScale,float StartTimeSeconds)

播放蒙太奇任务

ApplyInput(FGameplayTagContainer ApplyInputTags)

应用输入,用于调用子能力

OpenExecuteImmediately(UUltimateGameplayAbility* GameplayAbility)

开启子能力立即执行

CloseExecuteImmediately()

关闭子能力立即执行

BeginPredetermine(bool bExecuteImmediately)

开始预定能力

ExecutePredetermine(bool bNotifyUse,bool bExecuteImmediately)

执行预定能力

DoesOwnerHasTags(FGameplayTagContainer Tags)

拥有者是否拥有标签

DoesAbilityExecuted(FGameplayTagContainer Tags)

能力是否正在执行

CancelAbilityByTags(FGameplayTagContainer Tags)

使用标签关闭能力

{{{ content }}}