// Copyright Epic Games, Inc. All Rights Reserved. #include "Components/StateTreeComponentSchema.h" #include "StateTreeConditionBase.h" #include "StateTreeEvaluatorBase.h" #include "StateTreeTaskBase.h" #include "GameFramework/Actor.h" #include "Components/ActorComponent.h" #include "Subsystems/WorldSubsystem.h" bool UStateTreeComponentSchema::IsStructAllowed(const UScriptStruct* InScriptStruct) const { return InScriptStruct->IsChildOf(FStateTreeConditionCommonBase::StaticStruct()) || InScriptStruct->IsChildOf(FStateTreeEvaluatorCommonBase::StaticStruct()) || InScriptStruct->IsChildOf(FStateTreeTaskCommonBase::StaticStruct()); } bool UStateTreeComponentSchema::IsClassAllowed(const UClass* InClass) const { return IsChildOfBlueprintBase(InClass); } bool UStateTreeComponentSchema::IsExternalItemAllowed(const UStruct& InStruct) const { return InStruct.IsChildOf(AActor::StaticClass()) || InStruct.IsChildOf(UActorComponent::StaticClass()) || InStruct.IsChildOf(UWorldSubsystem::StaticClass()); }