diff --git a/Source/GameBaseFramework/Private/GameFeatures/GBFGameFeatureAction_AddAbilities.cpp b/Source/GameBaseFramework/Private/GameFeatures/GBFGameFeatureAction_AddAbilities.cpp index a40026c7..d06ca1df 100644 --- a/Source/GameBaseFramework/Private/GameFeatures/GBFGameFeatureAction_AddAbilities.cpp +++ b/Source/GameBaseFramework/Private/GameFeatures/GBFGameFeatureAction_AddAbilities.cpp @@ -9,6 +9,7 @@ #include "DVEDataValidator.h" #endif +#include #include #define LOCTEXT_NAMESPACE "UGBFGameFeatureAction_AddAbilities" @@ -224,7 +225,7 @@ void UGBFGameFeatureAction_AddAbilities::AddActorAbilities( AActor * actor, cons return; } - if ( auto * ability_system_component = FindOrAddComponentForActor< UAbilitySystemComponent >( actor, abilities_entry, active_data ) ) + if ( auto * ability_system_component = UAbilitySystemBlueprintLibrary::GetAbilitySystemComponent( actor ) ) { FActorExtensions AddedExtensions; AddedExtensions.Abilities.Reserve( abilities_entry.GrantedAbilities.Num() ); @@ -292,6 +293,10 @@ void UGBFGameFeatureAction_AddAbilities::AddActorAbilities( AActor * actor, cons active_data.ActiveExtensions.Add( actor, AddedExtensions ); } + else + { + UE_LOG( LogGameFeatures, Error, TEXT( "Failed to find `AbilitySystemComponent` for given actor. `Add abilities` GameFeature Action will not be processed" ) ); + } } void UGBFGameFeatureAction_AddAbilities::RemoveActorAbilities( AActor * actor, FPerContextData & active_data )