2.7 KiB
RPGGameplayAbility使用说明
AnimNotify
- ANS_SendGameplayEventToSelfTwice
- ANS_AddGameplayEffectToSelf
GameplayAbility
/** Gameplay标签与GameplayEffect Map */ ActionRPG框架使用
-
TMap<FGameplayTag, FRPGGameplayEffectContainer> EffectContainerMap:Tag与Effect的对应关系Map,根据接收到的Tag应用对应的GE。
-
FGameplayTagContainer ActivateEffectTag:存储被激活的EffectTag。
-
MakeEffectContainerSpecFromContainer():根据EffectContainerMap构建EffectContainerSpec。
-
MakeEffectContainerSpec():构建EffectContainerSpec。
-
ApplyEffectContainerSpec():对指定目标应有GE。
-
ApplyEffectContainer(): 调用MakeEffectContainerSpec生成FRPGGameplayEffectContainerSpec,再对指定目标应用GE。
-
TMap<FGameplayTag, FActiveGameplayEffectHandle> ActivateEffectMap:Tag与ActiveEffectHandle的Map.
-
BP_ApplyGameplayEffectToOwnerAndSaveHandle():往ActivateEffectMap添加Tag与Handle的版本。
-
ApplyGameplayEffectToOwnerAndSaveHandle():往ActivateEffectMap添加Tag与Handle的版本。
-
K2_ApplyGameplayEffectSpecToOwnerAndSaveHandle():往ActivateEffectMap添加Tag与Handle的版本。
-
ApplyGameplayEffectSpecToOwnerAndSaveHandle():往ActivateEffectMap添加Tag与Handle的版本。
-
BP_ApplyGameplayEffectToTargetAndSaveHandle():往ActivateEffectMap添加Tag与Handle的版本。
-
ApplyGameplayEffectToTargetAndSaveHandle():往ActivateEffectMap添加Tag与Handle的版本。 K2_ApplyGameplayEffectSpecToTargetAndSaveHandle():往ActivateEffectMap添加Tag与Handle的版本。
-
ApplyGameplayEffectSpecToTargetAndSaveHandle():往ActivateEffectMap添加Tag与Handle的版本。
-
RemoveActiveGameplayEffectByContainer():根据指定Tag查询ActivateEffectMap,之后根据Tag对应的Handle移除对应自身的GE,不指定就移除所有Map存储的GE。
AttributeSet
具体请参考RPGAttributeSet.h中注释。
基础属性
- 生命值 FGameplayAttributeData Health;
- 最大生命值 FGameplayAttributeData MaxHealth;
- 精力值 FGameplayAttributeData Energy;
- 最大精力值 FGameplayAttributeData MaxEnergy;
- 魔法值 FGameplayAttributeData Rune;
- 最大魔法 FGameplayAttributeData MaxRune;
- 攻击力 FGameplayAttributeData AttackPower;
- 防御力 FGameplayAttributeData DefensePower;
- 移动速度 FGameplayAttributeData MoveSpeed;
- 韧性 FGameplayAttributeData Tough;
GameplayTag
具体请参考Config目录下的GameplayTag.json文件。
AsyncTasks
- AsyncTaskAttributeChanged:异步检测属性集中的属性变化。
- AsyncTaskCooldownChanged:异步检测冷却变化。
- AsyncTaskEffectStackChanged:异步检测GE堆叠变化。
- URPGAbilityTask_PlayMontageAndWaitForEvent:播放Montage并且执行对应回调事件。