Files
loneseDocument/Plugins/Dialog/_relationships.md
meishibiezb 29a3f77908 init
2026-06-04 21:44:13 +08:00

1.9 KiB

Dialog 插件依赖关系

文件间引用关系

源文件 引用方式 目标文件 目标单位
DialogPresentationScript.cpp #include DialogPresentationScript.h FDialogPresentationScriptData, FDialogTextData, EDialogPresentationScriptCommandParamType, FDialogPresentationScriptParam, FDialogPresentationScriptCommand, UPresentationJsonLibrary
PresentationStrategyPlugin.h forward-declare (inline) FDialogPresentationScriptCommand
PresentationScriptExecutor.h forward-declare (inline) FDialogPresentationScriptData, IPresentationStrategyPlugin
DialogPresentationSubsystem.h forward-declare (inline) FDialogTextData, IPresentationScriptExecutor
DialogPresentationSubsystem.cpp #include DialogPresentationScript.h FDialogPresentationScriptData, FDialogTextData, UPresentationJsonLibrary
DialogPresentationSubsystem.cpp #include PresentationScriptExecutor.h IPresentationScriptExecutor
DialogPresentationScript.cpp #include (Json module) DialogPresentationScript.h All structs from DialogPresentationScript.h

关键依赖链

  1. Dialog Execution: UDialogPresentationSubsystem::ShowDialog → GetDialogPresentationScriptData → FDialogPresentationScriptData → IPresentationScriptExecutor::ExecutePresentationScript
  2. Text Lookup: UDialogPresentationSubsystem::GetDialogTextFromMapTable → DialogTextIndex (TMap<FName, FDialogTextData>)
  3. Choice Lookup: UDialogPresentationSubsystem::GetChoiceTextFromMapTable → ChoiceTextIndex (TMap<FName, FHelperArray>) → TArray
  4. JSON Parsing: FDialogPresentationScriptData::PresentationScript → UPresentationJsonLibrary (parses) → parses individual FDialogPresentationScriptCommand → FDialogPresentationScriptParam
  5. Strategy Dispatch: IPresentationScriptExecutor → IPresentationStrategyPlugin::PerformCommand(FDialogPresentationScriptCommand)