// Copyright Epic Games, Inc. All Rights Reserved.
/*===========================================================================
	Generated code exported from UnrealHeaderTool.
	DO NOT modify this manually! Edit the corresponding .h files instead!
===========================================================================*/

#include "UObject/GeneratedCppIncludes.h"
#include "WFUseSmartObjectAction.h"
#include "GameplayTagContainer.h"

PRAGMA_DISABLE_DEPRECATION_WARNINGS
static_assert(!UE_WITH_CONSTINIT_UOBJECT, "This generated code can only be compiled with !UE_WITH_CONSTINIT_UOBJECT");
void EmptyLinkFunctionForGeneratedCodeWFUseSmartObjectAction() {}

// ********** Begin Cross Module References ********************************************************
GAMEPLAYTAGS_API UScriptStruct* Z_Construct_UScriptStruct_FGameplayTagContainer(ETypeConstructPhase);
GAMEPLAYTAGS_API UScriptStruct* Z_Construct_UScriptStruct_FGameplayTagQuery(ETypeConstructPhase);
SMARTOBJECTSMODULE_API UEnum* Z_Construct_UEnum_SmartObjectsModule_ESmartObjectClaimPriority(ETypeConstructPhase);
WISEFELINE_API UClass* Z_Construct_UClass_UWFAction(ETypeConstructPhase);
AIMODULE_API UClass* Z_Construct_UClass_UBlackboardComponent(ETypeConstructPhase);
COREUOBJECT_API UClass* Z_Construct_UClass_UClass(ETypeConstructPhase);
SMARTOBJECTSMODULE_API UClass* Z_Construct_UClass_USmartObjectBehaviorDefinition(ETypeConstructPhase);
SMARTOBJECTSMODULE_API UClass* Z_Construct_UClass_USmartObjectSubsystem(ETypeConstructPhase);
// ********** End Cross Module References **********************************************************

// ********** Begin Same Module References *********************************************************
UPackage* Z_Construct_UPackage__Script_WFIntegrations(ETypeConstructPhase);
WFINTEGRATIONS_API UClass* Z_Construct_UClass_UWFUseSmartObjectAction(ETypeConstructPhase);
WFINTEGRATIONS_API UClass* Z_Construct_UClass_UWFUseSmartObjectAction(ETypeConstructPhase);
// ********** End Same Module References ***********************************************************
#define UHT_STRUCT_BASE(INIT) UE::CodeGen::ConstInit::TCompiledInObjectPtr<const FStructBaseChain>(UE::Private::AsStructBaseChain(INIT))

// ********** Begin Class UWFUseSmartObjectAction **************************************************
#ifdef UHT_STATICS
#error UHT_STATICS already defined
#endif
#define UHT_STATICS Z_Construct_UClass_UWFUseSmartObjectAction_Statics
struct UHT_STATICS
{
#if WITH_METADATA
	static constexpr UECodeGen_Private::FMetaDataPairParam Type_MetaData[] = {
		{ "BlueprintType", "true" },
		{ "Comment", "/**\n * Full reserve -> move -> occupy -> wait -> release lifecycle for a Smart Object, driven by the utility brain.\n *\n * On activate it either reuses a valid claim already stored in ClaimHandleKey (e.g. from a UWFClaimSmartObjectAction)\n * or finds and claims its own slot. It then moves the pawn to the slot (needs an AIController) and marks the slot\n * occupied. It waits UseDuration seconds (0 = until the brain switches away or Finished is called), then releases.\n *\n * The claim is always freed in OnDeactivate when this action created it, so switching actions never leaks a reservation.\n * Requires the pawn to be possessed by an AIController when bMoveToSlot is true.\n */" },
		{ "IncludePath", "WFUseSmartObjectAction.h" },
		{ "IsBlueprintBase", "true" },
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
		{ "ToolTip", "Full reserve -> move -> occupy -> wait -> release lifecycle for a Smart Object, driven by the utility brain.\n\nOn activate it either reuses a valid claim already stored in ClaimHandleKey (e.g. from a UWFClaimSmartObjectAction)\nor finds and claims its own slot. It then moves the pawn to the slot (needs an AIController) and marks the slot\noccupied. It waits UseDuration seconds (0 = until the brain switches away or Finished is called), then releases.\n\nThe claim is always freed in OnDeactivate when this action created it, so switching actions never leaks a reservation.\nRequires the pawn to be possessed by an AIController when bMoveToSlot is true." },
	};
	static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_BehaviorDefinitionClass_MetaData[] = {
		{ "Category", "WiseFeline|SmartObject" },
		{ "Comment", "/** The behavior definition class used both to filter Smart Objects and to occupy the slot. None means any / reserve only. */" },
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
		{ "ToolTip", "The behavior definition class used both to filter Smart Objects and to occupy the slot. None means any / reserve only." },
	};
	static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_ActivityRequirements_MetaData[] = {
		{ "Category", "WiseFeline|SmartObject" },
		{ "Comment", "/** Optional activity/tag requirements the Smart Object must satisfy. */" },
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
		{ "ToolTip", "Optional activity/tag requirements the Smart Object must satisfy." },
	};
	static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_UserTags_MetaData[] = {
		{ "Category", "WiseFeline|SmartObject" },
		{ "Comment", "/** Tags describing this user, matched against each Smart Object's user tag filter. */" },
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
		{ "ToolTip", "Tags describing this user, matched against each Smart Object's user tag filter." },
	};
	static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_SearchRadius_MetaData[] = {
		{ "Category", "WiseFeline|SmartObject" },
		{ "Comment", "/** Search half-extent (radius) around the controlled actor, in cm. Only used when this action finds its own object. */" },
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
		{ "ToolTip", "Search half-extent (radius) around the controlled actor, in cm. Only used when this action finds its own object." },
	};
	static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_ClaimPriority_MetaData[] = {
		{ "Category", "WiseFeline|SmartObject" },
		{ "Comment", "/** Priority used when this action claims a slot itself. */" },
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
		{ "ToolTip", "Priority used when this action claims a slot itself." },
	};
	static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_bMoveToSlot_MetaData[] = {
		{ "Category", "WiseFeline|SmartObject" },
		{ "Comment", "/** Whether to move the pawn to the slot before occupying it. Needs an AIController. */" },
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
		{ "ToolTip", "Whether to move the pawn to the slot before occupying it. Needs an AIController." },
	};
	static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_AcceptanceRadius_MetaData[] = {
		{ "Category", "WiseFeline|SmartObject" },
		{ "Comment", "/** How close (cm) the pawn must be to the slot to count as arrived. */" },
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
		{ "ToolTip", "How close (cm) the pawn must be to the slot to count as arrived." },
	};
	static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_UseDuration_MetaData[] = {
		{ "Category", "WiseFeline|SmartObject" },
		{ "Comment", "/** How long to stay on the object once occupied. 0 means stay until the brain switches away / Finished is called. */" },
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
		{ "ToolTip", "How long to stay on the object once occupied. 0 means stay until the brain switches away / Finished is called." },
	};
	static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_ClaimHandleKey_MetaData[] = {
		{ "Category", "WiseFeline|SmartObject" },
		{ "Comment", "/**\n\x09 * Optional blackboard key of type SO Claim Handle. If it already holds a valid claim, this action uses that claim\n\x09 * (and leaves freeing it to a Release action). Otherwise the action's own claim is written here while active.\n\x09 */" },
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
		{ "ToolTip", "Optional blackboard key of type SO Claim Handle. If it already holds a valid claim, this action uses that claim\n(and leaves freeing it to a Release action). Otherwise the action's own claim is written here while active." },
	};
	static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Subsystem_MetaData[] = {
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
	};
	static constexpr UECodeGen_Private::FMetaDataPairParam NewProp_Blackboard_MetaData[] = {
		{ "EditInline", "true" },
		{ "ModuleRelativePath", "Public/WFUseSmartObjectAction.h" },
	};
#endif // WITH_METADATA

// ********** Begin Class UWFUseSmartObjectAction constinit property declarations ******************
	static const UECodeGen_Private::FClassPropertyParams NewProp_BehaviorDefinitionClass;
	static const UECodeGen_Private::FStructPropertyParams NewProp_ActivityRequirements;
	static const UECodeGen_Private::FStructPropertyParams NewProp_UserTags;
	static const UECodeGen_Private::FFloatPropertyParams NewProp_SearchRadius;
	static const UECodeGen_Private::FBytePropertyParams NewProp_ClaimPriority_Underlying;
	static const UECodeGen_Private::FEnumPropertyParams NewProp_ClaimPriority;
	static void NewProp_bMoveToSlot_SetBit(void* Obj)
	{
		((UWFUseSmartObjectAction*)Obj)->bMoveToSlot = 1;
	}
	static const UECodeGen_Private::FBoolPropertyParams NewProp_bMoveToSlot;
	static const UECodeGen_Private::FFloatPropertyParams NewProp_AcceptanceRadius;
	static const UECodeGen_Private::FFloatPropertyParams NewProp_UseDuration;
	static const UECodeGen_Private::FNamePropertyParams NewProp_ClaimHandleKey;
	static const UECodeGen_Private::FObjectPropertyParams NewProp_Subsystem;
	static const UECodeGen_Private::FObjectPropertyParams NewProp_Blackboard;
	static const UECodeGen_Private::FPropertyParamsBase* const PropPointers[];
// ********** End Class UWFUseSmartObjectAction constinit property declarations ********************
	static FTypeConstructFunc* DependentSingletons[];
	static constexpr FCppClassTypeInfoStatic StaticCppClassTypeInfo = {
		TCppClassTypeTraits<UWFUseSmartObjectAction>::IsAbstract,
	};
	static const UECodeGen_Private::FClassParams ClassParams;
}; // struct UHT_STATICS

// ********** Begin Class UWFUseSmartObjectAction Property Definitions *****************************
const UECodeGen_Private::FClassPropertyParams UHT_STATICS::NewProp_BehaviorDefinitionClass = { "BehaviorDefinitionClass", nullptr, (EPropertyFlags)0x0014000000000005, UECodeGen_Private::EPropertyGenFlags::Class, nullptr, nullptr, 1, STRUCT_OFFSET(UWFUseSmartObjectAction, BehaviorDefinitionClass), Z_Construct_UClass_UClass, Z_Construct_UClass_USmartObjectBehaviorDefinition, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_BehaviorDefinitionClass_MetaData), NewProp_BehaviorDefinitionClass_MetaData) };
const UECodeGen_Private::FStructPropertyParams UHT_STATICS::NewProp_ActivityRequirements = { "ActivityRequirements", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Struct, nullptr, nullptr, 1, STRUCT_OFFSET(UWFUseSmartObjectAction, ActivityRequirements), Z_Construct_UScriptStruct_FGameplayTagQuery, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_ActivityRequirements_MetaData), NewProp_ActivityRequirements_MetaData) }; // 00c47a25651d9ad821aaed56d13f5fdf8a3855cb
const UECodeGen_Private::FStructPropertyParams UHT_STATICS::NewProp_UserTags = { "UserTags", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Struct, nullptr, nullptr, 1, STRUCT_OFFSET(UWFUseSmartObjectAction, UserTags), Z_Construct_UScriptStruct_FGameplayTagContainer, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_UserTags_MetaData), NewProp_UserTags_MetaData) }; // 93faf2d4041600295d23f175e0992095f880d07b
const UECodeGen_Private::FFloatPropertyParams UHT_STATICS::NewProp_SearchRadius = { "SearchRadius", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Float, nullptr, nullptr, 1, STRUCT_OFFSET(UWFUseSmartObjectAction, SearchRadius), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_SearchRadius_MetaData), NewProp_SearchRadius_MetaData) };
const UECodeGen_Private::FBytePropertyParams UHT_STATICS::NewProp_ClaimPriority_Underlying = { "UnderlyingType", nullptr, (EPropertyFlags)0x0000000000000000, UECodeGen_Private::EPropertyGenFlags::Byte, nullptr, nullptr, 1, 0, nullptr, METADATA_PARAMS(0, nullptr) };
const UECodeGen_Private::FEnumPropertyParams UHT_STATICS::NewProp_ClaimPriority = { "ClaimPriority", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Enum, nullptr, nullptr, 1, STRUCT_OFFSET(UWFUseSmartObjectAction, ClaimPriority), Z_Construct_UEnum_SmartObjectsModule_ESmartObjectClaimPriority, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_ClaimPriority_MetaData), NewProp_ClaimPriority_MetaData) }; // 42e67a4b62a764a7bdd0331f049a258276962d99
const UECodeGen_Private::FBoolPropertyParams UHT_STATICS::NewProp_bMoveToSlot = { "bMoveToSlot", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Bool | UECodeGen_Private::EPropertyGenFlags::NativeBool, nullptr, nullptr, 1, sizeof(bool), sizeof(UWFUseSmartObjectAction), &UHT_STATICS::NewProp_bMoveToSlot_SetBit, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_bMoveToSlot_MetaData), NewProp_bMoveToSlot_MetaData) };
const UECodeGen_Private::FFloatPropertyParams UHT_STATICS::NewProp_AcceptanceRadius = { "AcceptanceRadius", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Float, nullptr, nullptr, 1, STRUCT_OFFSET(UWFUseSmartObjectAction, AcceptanceRadius), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_AcceptanceRadius_MetaData), NewProp_AcceptanceRadius_MetaData) };
const UECodeGen_Private::FFloatPropertyParams UHT_STATICS::NewProp_UseDuration = { "UseDuration", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Float, nullptr, nullptr, 1, STRUCT_OFFSET(UWFUseSmartObjectAction, UseDuration), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_UseDuration_MetaData), NewProp_UseDuration_MetaData) };
const UECodeGen_Private::FNamePropertyParams UHT_STATICS::NewProp_ClaimHandleKey = { "ClaimHandleKey", nullptr, (EPropertyFlags)0x0010000000000005, UECodeGen_Private::EPropertyGenFlags::Name, nullptr, nullptr, 1, STRUCT_OFFSET(UWFUseSmartObjectAction, ClaimHandleKey), METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_ClaimHandleKey_MetaData), NewProp_ClaimHandleKey_MetaData) };
const UECodeGen_Private::FObjectPropertyParams UHT_STATICS::NewProp_Subsystem = { "Subsystem", nullptr, (EPropertyFlags)0x0124080000002000, UECodeGen_Private::EPropertyGenFlags::Object | UECodeGen_Private::EPropertyGenFlags::ObjectPtr, nullptr, nullptr, 1, STRUCT_OFFSET(UWFUseSmartObjectAction, Subsystem), Z_Construct_UClass_USmartObjectSubsystem, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Subsystem_MetaData), NewProp_Subsystem_MetaData) };
const UECodeGen_Private::FObjectPropertyParams UHT_STATICS::NewProp_Blackboard = { "Blackboard", nullptr, (EPropertyFlags)0x0124080000082008, UECodeGen_Private::EPropertyGenFlags::Object | UECodeGen_Private::EPropertyGenFlags::ObjectPtr, nullptr, nullptr, 1, STRUCT_OFFSET(UWFUseSmartObjectAction, Blackboard), Z_Construct_UClass_UBlackboardComponent, METADATA_PARAMS(UE_ARRAY_COUNT(NewProp_Blackboard_MetaData), NewProp_Blackboard_MetaData) };
const UECodeGen_Private::FPropertyParamsBase* const UHT_STATICS::PropPointers[] = {
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_BehaviorDefinitionClass,
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_ActivityRequirements,
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_UserTags,
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_SearchRadius,
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_ClaimPriority_Underlying,
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_ClaimPriority,
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_bMoveToSlot,
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_AcceptanceRadius,
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_UseDuration,
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_ClaimHandleKey,
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_Subsystem,
	(const UECodeGen_Private::FPropertyParamsBase*)&UHT_STATICS::NewProp_Blackboard,
};
static_assert(UE_ARRAY_COUNT(UHT_STATICS::PropPointers) < 2048);
// ********** End Class UWFUseSmartObjectAction Property Definitions *******************************
FTypeConstructFunc* UHT_STATICS::DependentSingletons[] = {
	(FTypeConstructFunc*)Z_Construct_UClass_UWFAction,
	(FTypeConstructFunc*)Z_Construct_UPackage__Script_WFIntegrations,
};
static_assert(UE_ARRAY_COUNT(UHT_STATICS::DependentSingletons) < 16);
const UECodeGen_Private::FClassParams UHT_STATICS::ClassParams = {
	&Z_Construct_UClass_UWFUseSmartObjectAction,
	nullptr,
	&StaticCppClassTypeInfo,
	DependentSingletons,
	nullptr,
	UHT_STATICS::PropPointers,
	nullptr,
	UE_ARRAY_COUNT(DependentSingletons),
	0,
	UE_ARRAY_COUNT(UHT_STATICS::PropPointers),
	0,
	0x009000A0u,
	METADATA_PARAMS(UE_ARRAY_COUNT(UHT_STATICS::Type_MetaData), UHT_STATICS::Type_MetaData)
};
FClassRegistrationInfo Z_Registration_Info_UClass_UWFUseSmartObjectAction;
UClass* Z_Construct_UClass_UWFUseSmartObjectAction(ETypeConstructPhase Phase)
{
	if (Phase == ETypeConstructPhase::Inner)
	{
		using TClass = UWFUseSmartObjectAction;
		if (!Z_Registration_Info_UClass_UWFUseSmartObjectAction.InnerSingleton)
		{
			GetPrivateStaticClassBody(
				TClass::StaticPackage(),
				TEXT("WFUseSmartObjectAction"),
				Z_Registration_Info_UClass_UWFUseSmartObjectAction.InnerSingleton,
				nullptr,
				DataSizeOf<TClass>(),
				alignof(TClass),
				TClass::StaticClassFlags,
				TClass::StaticClassCastFlags(),
				TClass::StaticConfigName(),
				(UClass::ClassConstructorType)InternalConstructor<TClass>,
				(UClass::ClassVTableHelperCtorCallerType)InternalVTableHelperCtorCaller<TClass>,
				UOBJECT_CPPCLASS_STATICFUNCTIONS_FORCLASS(TClass),
				&TClass::Super::StaticClass,
				&TClass::WithinClass::StaticClass
			);
		}
		return Z_Registration_Info_UClass_UWFUseSmartObjectAction.InnerSingleton;
	}
	if (!Z_Registration_Info_UClass_UWFUseSmartObjectAction.OuterSingleton)
	{
		UECodeGen_Private::ConstructUClass(Z_Registration_Info_UClass_UWFUseSmartObjectAction.OuterSingleton, UHT_STATICS::ClassParams);
	}
	return Z_Registration_Info_UClass_UWFUseSmartObjectAction.OuterSingleton;
}
#undef UHT_STATICS
DEFINE_VTABLE_PTR_HELPER_CTOR_NS(, UWFUseSmartObjectAction);
UWFUseSmartObjectAction::~UWFUseSmartObjectAction() {}
// ********** End Class UWFUseSmartObjectAction ****************************************************

// ********** Begin Registration *******************************************************************
#ifdef UHT_STATICS
#error UHT_STATICS already defined
#endif
#define UHT_STATICS Z_CompiledInDeferFile_FID_Users_ashka_projects_UEWF_Build_WFIntegrationsVariants_build_UE5_8_HostProject_Plugins_WFIntegrations_Source_WFIntegrations_Public_WFUseSmartObjectAction_h__Script_WFIntegrations_Statics
struct UHT_STATICS
{
	static constexpr FClassRegisterCompiledInInfo ClassInfo[] = {
		{ Z_Construct_UClass_UWFUseSmartObjectAction, TEXT("UWFUseSmartObjectAction"), &Z_Registration_Info_UClass_UWFUseSmartObjectAction, CONSTRUCT_RELOAD_VERSION_INFO(FClassReloadVersionInfo, sizeof(UWFUseSmartObjectAction), 1420209396U) },
	};
}; // UHT_STATICS 
static FRegisterCompiledInInfo Z_CompiledInDeferFile_FID_Users_ashka_projects_UEWF_Build_WFIntegrationsVariants_build_UE5_8_HostProject_Plugins_WFIntegrations_Source_WFIntegrations_Public_WFUseSmartObjectAction_h__Script_WFIntegrations_6e89ed480fcaef8bd17e41e9f5546a2921724591{
	TEXT("/Script/WFIntegrations"),
	UHT_STATICS::ClassInfo, UE_ARRAY_COUNT(UHT_STATICS::ClassInfo),
	nullptr, 0,
	nullptr, 0,
	nullptr, 0,
};
#undef UHT_STATICS
// ********** End Registration *********************************************************************
#undef UHT_STRUCT_BASE

PRAGMA_ENABLE_DEPRECATION_WARNINGS
