Files
UnrealEngine/Engine/Source/Runtime/ClientPilot/Public/ClientPilotBlackboard.h
2025-05-18 13:04:45 +08:00

42 lines
1.1 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "Containers/Map.h"
#include "Containers/UnrealString.h"
#include "Math/MathFwd.h"
#include "UObject/Object.h"
#include "UObject/ObjectMacros.h"
#include "UObject/UObjectGlobals.h"
#include "ClientPilotBlackboard.generated.h"
UCLASS(MinimalAPI)
class UClientPilotBlackboard : public UObject
{
GENERATED_BODY()
public:
CLIENTPILOT_API virtual void InitializeFromProfile(FString CategoryToUse);
CLIENTPILOT_API void AddOrUpdateValue(FString KeyName, float Value);
CLIENTPILOT_API void AddOrUpdateValue(FString KeyName, int Value);
CLIENTPILOT_API void AddOrUpdateValue(FString KeyName, FString Value);
CLIENTPILOT_API void AddOrUpdateValue(FString KeyName, FVector Value);
CLIENTPILOT_API FString GetStringValue(FString KeyName);
CLIENTPILOT_API int GetIntValue(FString KeyName);
CLIENTPILOT_API float GetFloatValue(FString KeyName);
CLIENTPILOT_API FVector GetVectorValue(FString KeyName);
void RemoveKey(FString Key)
{
Blackboard.Remove(Key);
}
void ResetBlackboard()
{
Blackboard.Empty();
}
protected:
TMap<FString, FString> Blackboard;
};