UQuestSystemBlueprintLibrary

v2.0
View as Markdown

UQuestSystemBlueprintLibrary belongs to the QuestSystem runtime module.

Labore labore consequat aute irure pariatur velit nostrud reprehenderit do adipiscing tempor ea irure ut. Tempor ex nulla minim voluptate voluptate velit enim nisi exercitation. Ex exercitation incididunt sint do excepteur aute consectetur et veniam ex duis sit aliqua ea.

Declaration

 1UINTERFACE(MinimalAPI, Blueprintable)
 2class UQuestSystemInterface : public UInterface
 3{
 4    GENERATED_BODY()
 5};
 6
 7class IQuestSystemInterface
 8{
 9    GENERATED_BODY()
10
11public:
12    UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "QuestSystem")
13    void OnPluginActivated(bool bSuccess);
14
15    UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "QuestSystem")
16    FMyResult ProcessData(const FMyInput& Input);
17
18    UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "QuestSystem")
19    bool CanExecute() const;
20};

Members

Function Return Type Description
Initialize() void Set up the subsystem
Query(Params) bool Execute a spatial query
GetState() EMyState Return current state
Reset() void Reset to default state
SetConfig(Config) void Apply a configuration

Example

 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}