UQuestObjectiveBase
(UObject)
(UObject)
QuestObjectives are the individual goals to be used and completed within a QuestBlock. QuestBlocks complete in as a result of QuestObjectives completing. All QuestObjectives should be unique Blueprints even if the underlying logic is the same.
NOTE: QuestObjectives automatically save all data needed for the base class to function. If your QuestObjective 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 (QuestObjectives are their own SaveAgent).
The ID assigned to a QuestObjective 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 if completion of the QuestObjective requires custom implementation. The base class by default only uses a single bool check. For counting, QuestObjectiveFloatCounter has already been made.
Call this function if you are overriding the UpdateObjective() function with your own implementation.
Override this function to check conditions that determine if the class should save.
Override this function to check conditions that determine if the class should save.
Override this function to implement saving additional data unique to a QuestObjective. 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 QuestObjective. Always make sure to call the parent function and pass the save game object up the inheritance tree.
Override this function to implement removing save data when it is no longer needed.
Subscribe to notify other objects when the QuestGraph is complete.
A reference to the SharedQuestDataObject runtime object.