27 FDlgEdge(int32 InTargetIndex = INDEX_NONE) : TargetIndex(InTargetIndex) {}
37 Text.EqualTo(
Other.Text) &&
38 bIncludeInAllOptionListIfUnsatisfied ==
Other.bIncludeInAllOptionListIfUnsatisfied &&
39 TextArguments ==
Other.TextArguments &&
40 Conditions ==
Other.Conditions;
45 return !(*
this ==
Other);
53 static bool IsTextVisible(
const UDlgNode& ParentNode);
56 void UpdateTextValueFromDefaultAndRemapping(
68 bool Evaluate(
const UDlgContext& Context, TSet<const UDlgNode*> AlreadyVisitedNodes)
const;
71 void RebuildConstructedText(
const UDlgContext& Context, FName FallbackParticipantName);
73 const TArray<FDlgTextArgument>& GetTextArguments()
const {
return TextArguments; }
76 void SetText(
const FText& NewText)
78 SetUnformattedText(NewText);
79 RebuildTextArguments();
84 void SetUnformattedText(
const FText& NewText)
90 const FText& GetText()
const
92 if (TextArguments.Num() > 0 && !ConstructedText.IsEmpty())
94 return ConstructedText;
100 const FText& GetUnformattedText()
const {
return Text; }
101 FText& GetMutableUnformattedText() {
return Text; }
104 bool IsValid()
const {
return TargetIndex > INDEX_NONE; }
106 static const FDlgEdge& GetInvalidEdge()
113 static FName GetMemberNameText() {
return GET_MEMBER_NAME_CHECKED(
FDlgEdge, Text); }
114 static FName GetMemberNameTextArguments() {
return GET_MEMBER_NAME_CHECKED(
FDlgEdge, TextArguments); }
118 UPROPERTY(VisibleAnywhere, BlueprintReadWrite, Category =
"Dialogue|Edge", Meta = (ClampMin = -1))
119 int32 TargetIndex = INDEX_NONE;
122 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "
Dialogue|Edge")
126 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "
Dialogue|Edge")
130 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category = "
Dialogue|Edge")
131 bool bIncludeInAllOptionListIfUnsatisfied = true;
137 UPROPERTY(EditAnywhere, BlueprintReadOnly, Category = "
Dialogue|Edge", Meta = (MultiLine = true))
141 UPROPERTY(EditAnywhere, BlueprintReadOnly, EditFixedSize, Category = "
Dialogue|Edge")
145 FText ConstructedText;
153 WithIdenticalViaEquality =
true
TArray< FDlgTextArgument > TextArguments
UPROPERTY(EditAnywhere, BlueprintReadOnly, EditFixedSize, Category = "Dialogue|Edge")
static void UpdateTextArgumentArray(const FText &Text, TArray< FDlgTextArgument > &InOutArgumentArray)