diff --git a/03-UnrealEngine/Gameplay/GAS/GAS Ability输入绑定.md b/03-UnrealEngine/Gameplay/GAS/GAS Ability输入绑定.md index 7931e64..ee7c80c 100644 --- a/03-UnrealEngine/Gameplay/GAS/GAS Ability输入绑定.md +++ b/03-UnrealEngine/Gameplay/GAS/GAS Ability输入绑定.md @@ -108,4 +108,16 @@ void UGSAbilitySystemComponent::AbilityLocalInputPressed(int32 InputID) ``` # SDHGame -李兄是在状态机每个节点的StateBegin()中调用CreateDynamicSkillInputActionMappingContext()进行动态绑定的。 \ No newline at end of file +李兄是在状态机每个节点的StateBegin()中调用CreateDynamicSkillInputActionMappingContext()进行动态绑定的。FSDHSkillInputActionBinding里包含FEnhancedActionKeyMapping相关数据。 +```c++ +void USDHSMStateIns::OutputActionKeyMapping(TArray& OutBindings, const TArray& InputSkillBinding) +{ + for (int32 i = 0; i < InputSkillBinding.Num(); i++) + { + FEnhancedActionKeyMapping NewMapping; + NewMapping.Key = InputSkillBinding[i].Key; + NewMapping.Action = InputSkillBinding[i].Action; + OutBindings.Add(MoveTemp(NewMapping)); + } +} +``` \ No newline at end of file