UQuestGraphBase
(UObject)
(UObject)
A QuestGraph is used to encapsulate a single quest. They are built using QuestBlocks and define the logic by which a quest traverses from block to block both linearly and with branching.
NOTE: QuestGraphs automatically save all data needed for the base class to function. If your QuestGraph requires saving additional information there are two options:
Store the data on the SharedQuestDataObject and handle saving within that class.
Follow the save system guide for saving in derived classes that already implement save and load functionality (QuestGraphs are their own SaveAgent).
The ID assigned to a QuestGraph so it can be referenced by other systems interacting with the quest system.
Text that can be retreived using KGameFrameworkStatics functions to be displayed.
Override this function and call CreateQuestBlock() to populate the QuestGraph with QuestBlocks. You should also store references to the instantiated QuestBlocks for use within the graph.
Call this function to spawn QuestBlocks in the QuestGraph. QuestBlocks should be unique Blueprint classes derived from the QuestBlock base class.
Override this function to activate the starting QuestBlocks for the QuestGraph.
NOTE: This function is only called when quests are activated for the first time through the QuestManagerSubsystem and not when an active quest is reloaded from save.
Call this function to activate multiple QuestBlocks simultaneously.
Call this function to mark the QuestGraph as complete and prevent it from being further updated.
This function probably won't ever need to be called since quests can be saved and loaded synchronously at the same time through the game state flow.
This function probably won't ever need to be called since quests can be saved and loaded synchronously at the same time through the game state flow.
Override this function to implement saving additional data unique to a QuestGraph. Always make sure to call the parent function and pass the save game object up the inheritance tree.
Override this function to implement loading additional data unique to a QuestGraph. Always make sure to call the parent function and pass the save game object up the inheritance tree.
Gets the currently loaded KSaveGame object.
A reference to the SharedQuestDataObject runtime object.