7#include "ArticyPausableType.h"
8#include "Interfaces/ArticyNode.h"
9#include "Interfaces/ArticyConditionProvider.h"
10#include "Interfaces/ArticyInstructionProvider.h"
11#include "ArticyScriptFragment.generated.h"
19UCLASS(BlueprintType, abstract)
35 UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category =
"Articy")
45 template<typename Type, typename PropType>
46 friend struct ArticyObjectTypeInfo;
60 mutable
int CachedExpressionHash;
99 UFUNCTION(BlueprintCallable, Category =
"Condition")
107 EArticyPausableType
GetType()
override {
return EArticyPausableType::Condition; }
116 bool Evaluate(
class UArticyGlobalVariables* GV =
nullptr,
class UObject* MethodProvider =
nullptr)
override;
125 void Explore(
UArticyFlowPlayer* Player, TArray<FArticyBranch>& OutBranches,
const uint32& Depth)
override;
171 UFUNCTION(BlueprintCallable, Category =
"Instruction")
179 EArticyPausableType
GetType()
override {
return EArticyPausableType::Instruction; }
187 void Execute(
class UArticyGlobalVariables* GV =
nullptr,
class UObject* MethodProvider =
nullptr)
override;
196 void Explore(
UArticyFlowPlayer* Player, TArray<FArticyBranch>& OutBranches,
const uint32& Depth)
override;
Definition ArticyConditionProvider.h:16
Definition ArticyInstructionProvider.h:16
Definition ArticyScriptFragment.h:90
EArticyPausableType GetType() override
Definition ArticyScriptFragment.h:107
UArticyScriptCondition * GetCondition() const
Definition ArticyScriptFragment.cpp:117
Definition ArticyFlowPlayer.h:29
Definition ArticyGlobalVariables.h:479
Definition ArticyScriptFragment.h:162
EArticyPausableType GetType() override
Definition ArticyScriptFragment.h:179
UArticyScriptInstruction * GetInstruction() const
Definition ArticyScriptFragment.cpp:134
Base class for all nodes (fragments) in the flow.
Definition ArticyNode.h:24
Definition ArticyPrimitive.h:17
Definition ArticyScriptFragment.h:70
bool Evaluate(class UArticyGlobalVariables *GV=nullptr, class UObject *MethodProvider=nullptr) override
Definition ArticyScriptFragment.cpp:52
Definition ArticyScriptFragment.h:21
void InitFromJson(TSharedPtr< FJsonValue > Json) override
Definition ArticyScriptFragment.cpp:29
int GetExpressionHash() const
Definition ArticyScriptFragment.cpp:15
const FString & GetExpression() const
Definition ArticyScriptFragment.h:29
FString Expression
Definition ArticyScriptFragment.h:36
Definition ArticyScriptFragment.h:143
void Execute(class UArticyGlobalVariables *GV=nullptr, class UObject *MethodProvider=nullptr) override
Definition ArticyScriptFragment.cpp:105