ArticyXImporter
ArticyXImporter for Unreal Engine
Loading...
Searching...
No Matches
ArticyFlowClasses.h
1//
2// Copyright (c) 2023 articy Software GmbH & Co. KG. All rights reserved.
3//
4
5#pragma once
6
7#include "ArticyPausableType.h"
8#include "ArticyPins.h"
9#include "Interfaces/ArticyNode.h"
10
11#include "ArticyFlowClasses.generated.h"
12
16UCLASS()
17class ARTICYRUNTIME_API UArticyFlowFragment : public UArticyNode
18{
19 GENERATED_BODY()
20
21public:
22
27 EArticyPausableType GetType() override { return EArticyPausableType::FlowFragment; }
28};
29
33UCLASS()
34class ARTICYRUNTIME_API UArticyDialogue : public UArticyNode
35{
36 GENERATED_BODY()
37
38public:
39
44 EArticyPausableType GetType() override { return EArticyPausableType::Dialogue; }
45};
46
50UCLASS()
51class ARTICYRUNTIME_API UArticyDialogueFragment : public UArticyNode
52{
53 GENERATED_BODY()
54
55public:
56
61 EArticyPausableType GetType() override { return EArticyPausableType::DialogueFragment; }
62};
63
67UCLASS()
68class ARTICYRUNTIME_API UArticyHub : public UArticyNode
69{
70 GENERATED_BODY()
71
72public:
73
78 EArticyPausableType GetType() override { return EArticyPausableType::Hub; }
79};
80
84UCLASS()
85class ARTICYRUNTIME_API UArticyJump : public UArticyNode
86{
87 GENERATED_BODY()
88
89public:
90
95 EArticyPausableType GetType() override { return EArticyPausableType::Jump; }
96
101 UArticyPrimitive* GetTarget() const;
102
107 FArticyId GetTargetID() const { return Target; }
108
113 UArticyFlowPin* GetTargetPin() const;
114
120
127 void Explore(UArticyFlowPlayer* Player, TArray<FArticyBranch>& OutBranches, const uint32& Depth) override;
128
129protected:
130
132 UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Articy", meta = (DisplayName = "TargetPin"))
134
136 UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "Articy", meta = (DisplayName = "Target"))
138
139private:
140
142 UPROPERTY(VisibleAnywhere, Transient, Category = "Articy")
143 mutable UArticyFlowPin* TargetPinObj;
144
146 UPROPERTY(VisibleAnywhere, Transient, Category = "Articy")
147 mutable UArticyPrimitive* TargetObj;
148};
Definition ArticyFlowClasses.h:52
EArticyPausableType GetType() override
Definition ArticyFlowClasses.h:61
Definition ArticyFlowClasses.h:35
EArticyPausableType GetType() override
Definition ArticyFlowClasses.h:44
Definition ArticyFlowClasses.h:18
EArticyPausableType GetType() override
Definition ArticyFlowClasses.h:27
Definition ArticyPins.h:22
Definition ArticyFlowPlayer.h:29
Definition ArticyFlowClasses.h:69
EArticyPausableType GetType() override
Definition ArticyFlowClasses.h:78
Definition ArticyFlowClasses.h:86
EArticyPausableType GetType() override
Definition ArticyFlowClasses.h:95
FArticyId GetTargetID() const
Definition ArticyFlowClasses.h:107
FArticyId GetTargetPinID() const
Definition ArticyFlowClasses.h:119
FArticyId Target
Definition ArticyFlowClasses.h:137
FArticyId TargetPin
Definition ArticyFlowClasses.h:133
Base class for all nodes (fragments) in the flow.
Definition ArticyNode.h:24
Definition ArticyPrimitive.h:17
Definition ArticyBaseTypes.h:18