6#if WITH_GAMEPLAY_DEBUGGER
8#include "CoreMinimal.h"
9#include "GameplayDebuggerCategory.h"
13class APlayerController;
30class FGameplayDebuggerCategory_AIToolKit :
public FGameplayDebuggerCategory_Base
34 FGameplayDebuggerCategory_AIToolKit();
36 virtual void CollectData(APlayerController* OwnerPC, AActor* DebugActor)
override;
37 virtual void DrawData(APlayerController* OwnerPC, FGameplayDebuggerCanvasContext& CanvasContext)
override;
39 static TSharedRef<FGameplayDebuggerCategory> MakeInstance();
43 struct FKnownActorDebugData
46 FVector ActorLocation;
55 float TrustDecreaseFactor;
56 float HostilityIncreaseFactor;
60 float VisibilityScore;
64 float DamageReceivedByOwner;
66 FKnownActorDebugData()
70 FKnownActorDebugData(
const FString& Name,
const FVector&
Location,
const bool bHostile,
const bool bFriendly,
const bool bNeutral,
const float Trust,
71 const float Hostility,
const float TrustDecrease,
const float HostilityIncrease,
const float Damage,
const float Detection,
const float Visibility,
72 const bool Detected,
const bool Investigate,
const bool Dead,
const float DamageReceived) :
73 ActorName(Name), ActorLocation(
Location), bIsHostile(bHostile), bIsFriendly(bFriendly), bIsNeutral(bNeutral), TrustScore(Trust),HostilityScore(Hostility),
74 TrustDecreaseFactor(TrustDecrease), HostilityIncreaseFactor(HostilityIncrease), DamageDealt(
Damage), DetectionLevel(Detection), VisibilityScore(Visibility),
75 bDetected(Detected), bInvestigate(
Investigate), bIsDead(Dead), DamageReceivedByOwner(DamageReceived)
78 friend FArchive& operator<<(FArchive& Ar, FKnownActorDebugData& KnownActorData);
88 FString CurrentAIState;
98 float KnowledgeOfPlayerLocation;
102 FString TreeDescription;
103 FString BlackboardDescription;
105 TArray<FKnownActorDebugData> KnownActorDebugData;
106 void Serialize(FArchive& Ar);