Files
UnrealEngine/Samples/Games/Lyra/Source/LyraGame/Input/LyraInputConfig.cpp
2025-05-18 13:04:45 +08:00

49 lines
1.2 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "LyraInputConfig.h"
#include "LyraLogChannels.h"
#include UE_INLINE_GENERATED_CPP_BY_NAME(LyraInputConfig)
ULyraInputConfig::ULyraInputConfig(const FObjectInitializer& ObjectInitializer)
{
}
const UInputAction* ULyraInputConfig::FindNativeInputActionForTag(const FGameplayTag& InputTag, bool bLogNotFound) const
{
for (const FLyraInputAction& Action : NativeInputActions)
{
if (Action.InputAction && (Action.InputTag == InputTag))
{
return Action.InputAction;
}
}
if (bLogNotFound)
{
UE_LOG(LogLyra, Error, TEXT("Can't find NativeInputAction for InputTag [%s] on InputConfig [%s]."), *InputTag.ToString(), *GetNameSafe(this));
}
return nullptr;
}
const UInputAction* ULyraInputConfig::FindAbilityInputActionForTag(const FGameplayTag& InputTag, bool bLogNotFound) const
{
for (const FLyraInputAction& Action : AbilityInputActions)
{
if (Action.InputAction && (Action.InputTag == InputTag))
{
return Action.InputAction;
}
}
if (bLogNotFound)
{
UE_LOG(LogLyra, Error, TEXT("Can't find AbilityInputAction for InputTag [%s] on InputConfig [%s]."), *InputTag.ToString(), *GetNameSafe(this));
}
return nullptr;
}