A Demo Project for the UnrealEngineSDK
|
UCLASS(BlueprintType, Meta = (DisplayThumbnail = "true")) More...
#include <DlgDialogue.h>
Public Member Functions | |
int32 | AddNode (UDlgNode *NodeToAdd) |
template<class T > | |
T * | ConstructDialogueNode (TSubclassOf< UDlgNode > DialogueNodeClass=T::StaticClass()) |
bool | DeleteAllTextFiles () const |
bool | DeleteTextFileForExtension (const FString &FileExtension) const |
bool | DeleteTextFileForTextFormat (EDlgDialogueTextFormat TextFormat) const |
void | EmptyNodesGUIDToIndexMap () |
void | ExportToFile () const |
const TArray< FDlgParticipantClass > & | GetAllParticipantClasses () const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetAllParticipantNames (TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetAllSpeakerStates (TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetBoolNames (FName ParticipantName, TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetClassBoolNames (FName ParticipantName, TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetClassFloatNames (FName ParticipantName, TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetClassIntNames (FName ParticipantName, TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetClassNameNames (FName ParticipantName, TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetClassTextNames (FName ParticipantName, TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetConditions (FName ParticipantName, TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetCustomEvents (FName ParticipantName, TSet< UClass * > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
FString | GetDesc () override |
FName | GetDialogueFName () const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
FString | GetDialogueName () const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
int32 | GetDialogueVersion () const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetEvents (FName ParticipantName, TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | GetFloatNames (FName ParticipantName, TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
FGuid | GetGUID () const |
UFUNCTION(BlueprintPure, Category = "Dialogue|GUID") | |
void | GetIntNames (FName ParticipantName, TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
UDlgNode * | GetMutableNodeFromGUID (const FGuid &NodeGUID) const |
UFUNCTION(BlueprintPure, Category = "Dialogue|Data", DisplayName = "Get Node From GUID") | |
UDlgNode * | GetMutableNodeFromIndex (int32 NodeIndex) const |
UFUNCTION(BlueprintPure, Category = "Dialogue", DisplayName = "Get Node From Index") | |
UDlgNode * | GetMutableStartNode () const |
UFUNCTION(BlueprintPure, Category = "Dialogue", DisplayName = "Get Start Node") | |
void | GetNameNames (FName ParticipantName, TSet< FName > &OutSet) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
FGuid | GetNodeGUIDForIndex (int32 NodeIndex) const |
UFUNCTION(BlueprintPure, Category = "Dialogue", DisplayName = "Get Node GUID For Index") | |
int32 | GetNodeIndexForGUID (const FGuid &NodeGUID) const |
UFUNCTION(BlueprintPure, Category = "Dialogue", DisplayName = "Get Node Index For GUID") | |
const TArray< UDlgNode * > & | GetNodes () const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
UClass * | GetParticipantClass (FName ParticipantName) const |
EDITOR function, it only works if the participant class is setup in the ParticipantsClasses array. | |
const TMap< FName, FDlgParticipantData > & | GetParticipantsData () const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
int32 | GetParticipantsNum () const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
const UDlgNode & | GetStartNode () const |
FString | GetTextFilePathName (bool bAddExtension=true) const |
FString | GetTextFilePathName (EDlgDialogueTextFormat TextFormat, bool bAddExtension=true) const |
bool | HasGUID () const |
UFUNCTION(BlueprintPure, Category = "Dialogue|GUID") | |
bool | HasParticipant (FName ParticipantName) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | ImportFromFile () |
void | InitialSyncWithTextFile () |
bool | IsEndNode (int32 NodeIndex) const |
bool | IsInProjectDirectory () const |
bool | IsValidNodeGUID (const FGuid &NodeGUID) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
bool | IsValidNodeIndex (int32 NodeIndex) const |
UFUNCTION(BlueprintPure, Category = "Dialogue") | |
void | OnPreAssetSaved () |
void | PostDuplicate (bool bDuplicateForPIE) override |
void | PostEditImport () override |
void | PostInitProperties () override |
void | PostLoad () override |
void | PostRename (UObject *OldOuter, FName OldName) override |
void | PreSave (const class ITargetPlatform *TargetPlatform) override |
void | RegenerateGUID () |
void | Serialize (FArchive &Ar) override |
void | SetNode (int32 NodeIndex, UDlgNode *InNode) |
void | SetNodes (const TArray< UDlgNode * > &InNodes) |
void | SetStartNode (UDlgNode *InStartNode) |
void | UpdateAndRefreshData (bool bUpdateTextsNamespacesAndKeys=false) |
Static Public Member Functions | |
static FString | GetTextFilePathNameFromAssetPathName (const FString &AssetPathName) |
Protected Attributes | |
TSet< FName > | AllSpeakerStates |
UPROPERTY(VisibleAnywhere, AdvancedDisplay, Category = "Dialogue", Meta = (DlgNoExport)) | |
bool | bIsSyncedWithTextFile = false |
bool | bWasLoaded = false |
FGuid | GUID |
UPROPERTY(VisibleAnywhere, Category = "Dialogue") | |
FName | Name |
UPROPERTY(VisibleAnywhere, Category = "Dialogue") | |
TArray< UDlgNode * > | Nodes |
UPROPERTY(AdvancedDisplay, EditFixedSize, Instanced, Meta = (DlgWriteIndex)) | |
TMap< FGuid, int32 > | NodesGUIDToIndexMap |
UPROPERTY(VisibleAnywhere, AdvancedDisplay, Category = "Dialogue", DisplayName = "Nodes GUID To Index Map") | |
TArray< FDlgParticipantClass > | ParticipantsClasses |
UPROPERTY(EditAnywhere, EditFixedSize, Category = "Dialogue") | |
TMap< FName, FDlgParticipantData > | ParticipantsData |
UPROPERTY(VisibleAnywhere, AdvancedDisplay, Category = "Dialogue", Meta = (DlgNoExport)) | |
UDlgNode * | StartNode |
UPROPERTY(Instanced) | |
int32 | Version = FDlgDialogueObjectVersion::LatestVersion |
UPROPERTY() | |
Private Member Functions | |
void | AddConditionsDataFromNodeEdges (const UDlgNode *Node, int32 NodeIndex) |
void | AutoFixGraph () |
void | ExportToFileFormat (EDlgDialogueTextFormat TextFormat) const |
GENERATED_BODY () | |
FDlgParticipantData & | GetParticipantDataEntry (FName ParticipantName, FName FallbackParticipantName, bool bCheckNone, const FString &ContextMessage) |
void | ImportFromFileFormat (EDlgDialogueTextFormat TextFormat) |
void | RebuildAndUpdateNode (UDlgNode *Node, const UDlgSystemSettings &Settings, bool bUpdateTextsNamespacesAndKeys) |
void | UpdateGUIDToIndexMap (const UDlgNode *Node, int32 NodeIndex) |
UCLASS(BlueprintType, Meta = (DisplayThumbnail = "true"))
Dialogue asset containing the static data of a dialogue Instances can be created in content browser Dialogues have a custom blueprint editor
Definition at line 84 of file DlgDialogue.h.
|
private |
Definition at line 562 of file DlgDialogue.cpp.
|
inline |
|
private |
Tries to fix the internal graph of this Dialogue in the following ways:
Definition at line 852 of file DlgDialogue.cpp.
|
inline |
Definition at line 235 of file DlgDialogue.h.
bool UDlgDialogue::DeleteAllTextFiles | ( | ) | const |
Definition at line 944 of file DlgDialogue.cpp.
bool UDlgDialogue::DeleteTextFileForExtension | ( | const FString & | FileExtension | ) | const |
Definition at line 927 of file DlgDialogue.cpp.
bool UDlgDialogue::DeleteTextFileForTextFormat | ( | EDlgDialogueTextFormat | TextFormat | ) | const |
|
inline |
void UDlgDialogue::ExportToFile | ( | ) | const |
Definition at line 483 of file DlgDialogue.cpp.
|
private |
Definition at line 495 of file DlgDialogue.cpp.
|
private |
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 285 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 272 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 467 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 375 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 428 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 415 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 402 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 441 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 454 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 310 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 336 of file DlgDialogue.h.
|
inlineoverride |
Definition at line 94 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 496 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 483 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 476 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 323 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 362 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue|GUID")
Definition at line 503 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 349 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue|Data", DisplayName = "Get Node From GUID")
Definition at line 567 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue", DisplayName = "Get Node From Index")
Definition at line 561 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue", DisplayName = "Get Start Node")
Definition at line 526 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 388 of file DlgDialogue.h.
|
BlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue", DisplayName = "Get Node GUID For Index")
Definition at line 780 of file DlgDialogue.cpp.
|
BlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue", DisplayName = "Get Node Index For GUID")
Definition at line 791 of file DlgDialogue.cpp.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 519 of file DlgDialogue.h.
|
inlineBlueprintPure |
EDITOR function, it only works if the participant class is setup in the ParticipantsClasses array.
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 292 of file DlgDialogue.h.
|
private |
Definition at line 541 of file DlgDialogue.cpp.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 251 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 265 of file DlgDialogue.h.
|
inline |
FString UDlgDialogue::GetTextFilePathName | ( | bool | bAddExtension = true | ) | const |
bAddExtension | If this adds the .dlg or .dlg.json extension depending on the TextFormat. |
Definition at line 900 of file DlgDialogue.cpp.
FString UDlgDialogue::GetTextFilePathName | ( | EDlgDialogueTextFormat | TextFormat, |
bool | bAddExtension = true ) const |
|
static |
Definition at line 959 of file DlgDialogue.cpp.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue|GUID")
Definition at line 512 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 258 of file DlgDialogue.h.
void UDlgDialogue::ImportFromFile | ( | ) |
Definition at line 358 of file DlgDialogue.cpp.
|
private |
Definition at line 371 of file DlgDialogue.cpp.
|
inline |
Definition at line 594 of file DlgDialogue.h.
bool UDlgDialogue::IsEndNode | ( | int32 | NodeIndex | ) | const |
bool UDlgDialogue::IsInProjectDirectory | ( | ) | const |
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 539 of file DlgDialogue.h.
|
inlineBlueprintPure |
UFUNCTION(BlueprintPure, Category = "Dialogue")
Definition at line 533 of file DlgDialogue.h.
void UDlgDialogue::OnPreAssetSaved | ( | ) |
Definition at line 471 of file DlgDialogue.cpp.
|
override |
Called after duplication & serialization and before PostLoad. Used to e.g. make sure UStaticMesh's UModel gets copied as well. Note: NOT called on components on actor duplication (alt-drag or copy-paste). Use PostEditImport as well to cover that case.
Definition at line 205 of file DlgDialogue.cpp.
|
override |
Called after importing property values for this object (paste, duplicate or .t3d import) Allow the object to perform any cleanup for properties which shouldn't be duplicated or are unsupported by the script serialization
Definition at line 218 of file DlgDialogue.cpp.
|
override |
Called after the C++ constructor and after the properties have been initialized, including those loaded from config. mainly this is to emulate some behavior of when the constructor was called after the properties were initialized. This creates the DlgGraph for this Dialogue.
Definition at line 164 of file DlgDialogue.cpp.
|
override |
Do any object-specific cleanup required immediately after loading an object, and immediately after any undo/redo.
Definition at line 75 of file DlgDialogue.cpp.
|
override |
Executed after Rename is executed.
Definition at line 199 of file DlgDialogue.cpp.
|
override |
Presave function. Gets called once before an object gets serialized for saving. This function is necessary for save time computation as Serialize gets called three times per object from within SavePackage.
Definition at line 55 of file DlgDialogue.cpp.
|
private |
Definition at line 589 of file DlgDialogue.cpp.
|
inline |
|
override |
UObject serializer.
Definition at line 63 of file DlgDialogue.cpp.
void UDlgDialogue::SetNode | ( | int32 | NodeIndex, |
UDlgNode * | InNode ) |
void UDlgDialogue::SetNodes | ( | const TArray< UDlgNode * > & | InNodes | ) |
Definition at line 812 of file DlgDialogue.cpp.
void UDlgDialogue::SetStartNode | ( | UDlgNode * | InStartNode | ) |
void UDlgDialogue::UpdateAndRefreshData | ( | bool | bUpdateTextsNamespacesAndKeys = false | ) |
Definition at line 607 of file DlgDialogue.cpp.
|
private |
Definition at line 832 of file DlgDialogue.cpp.
|
protectedVisibleAnywhereAdvancedDisplay |
UPROPERTY(VisibleAnywhere, AdvancedDisplay, Category = "Dialogue", Meta = (DlgNoExport))
Definition at line 704 of file DlgDialogue.h.
|
protected |
Definition at line 734 of file DlgDialogue.h.
|
protected |
Definition at line 757 of file DlgDialogue.h.
|
protectedVisibleAnywhere |
UPROPERTY(VisibleAnywhere, Category = "Dialogue")
Definition at line 680 of file DlgDialogue.h.
|
protectedVisibleAnywhere |
UPROPERTY(VisibleAnywhere, Category = "Dialogue")
Definition at line 673 of file DlgDialogue.h.
|
protectedInstancedAdvancedDisplayEditFixedSize |
UPROPERTY(AdvancedDisplay, EditFixedSize, Instanced, Meta = (DlgWriteIndex))
Definition at line 723 of file DlgDialogue.h.
|
protectedVisibleAnywhereAdvancedDisplay |
UPROPERTY(VisibleAnywhere, AdvancedDisplay, Category = "Dialogue", DisplayName = "Nodes GUID To Index Map")
Definition at line 731 of file DlgDialogue.h.
|
protectedEditAnywhereEditFixedSize |
UPROPERTY(EditAnywhere, EditFixedSize, Category = "Dialogue")
Definition at line 688 of file DlgDialogue.h.
|
protectedVisibleAnywhereAdvancedDisplay |
UPROPERTY(VisibleAnywhere, AdvancedDisplay, Category = "Dialogue", Meta = (DlgNoExport))
Definition at line 696 of file DlgDialogue.h.
|
protectedInstanced |
UPROPERTY(Instanced)
Definition at line 712 of file DlgDialogue.h.
|
protected |
UPROPERTY()
Definition at line 666 of file DlgDialogue.h.