UQuestSystemSubsystem

v2.0
View as Markdown

UQuestSystemSubsystem belongs to the QuestSystem runtime module.

Do voluptate esse ipsum enim nostrud ea sit voluptate et. Adipiscing aliquip nostrud aliquip ut nisi velit dolor nisi aute nostrud tempor ex in eiusmod. Labore consequat esse labore pariatur ullamco aliqua dolor ad.

Declaration

 1// Unit test example
 2IMPLEMENT_SIMPLE_AUTOMATION_TEST(
 3    FQuestSystemBasicTest,
 4    "QuestSystem.Core.BasicFunctionality",
 5    EAutomationTestFlags::ApplicationContextMask | EAutomationTestFlags::ProductFilter
 6)
 7
 8bool FQuestSystemBasicTest::RunTest(const FString& Parameters)
 9{
10    UQuestSystemSubsystem* Subsystem = NewObject<UQuestSystemSubsystem>();
11    TestNotNull(TEXT("Subsystem should be created"), Subsystem);
12
13    Subsystem->Initialize();
14    TestTrue(TEXT("Subsystem should be initialized"), Subsystem->IsInitialized());
15
16    FMyQueryParams Params;
17    Params.Radius = 500.0f;
18    TestTrue(TEXT("Query params should be valid"), Params.IsValid());
19
20    return true;
21}

Members

Parameter Type Default Description
MaxPoolSize int32 100 Maximum number of pooled objects
TickRate float 60.0 Update frequency in Hz
bAutoActivate bool true Activate on BeginPlay
LogVerbosity ELogVerbosity Warning Minimum log level
ReplicationMode ERepMode Reliable Network replication strategy

Example

 1#include "QuestSystem.h"
 2#include "Engine/World.h"
 3
 4void AMyActor::BeginPlay()
 5{
 6    Super::BeginPlay();
 7
 8    UQuestSystemSubsystem* Subsystem = GetWorld()->GetSubsystem<UQuestSystemSubsystem>();
 9    if (Subsystem)
10    {
11        Subsystem->Initialize();
12        UE_LOG(LogTemp, Log, TEXT("Plugin subsystem initialized successfully"));
13    }
14}