Centralized save manager events
Posted: Wed Apr 24, 2024 2:43 am
Hello,
I am struggling a bit to wrap my head around saving.
Currenly I am using Topdown engine and Inventory engine and generally save using Inventory engine.
I am trying to make everything centralized (for all my assets) and I think the Easy Save asset can handle all.
So what need is a way to keep track of changes in Love/hate and Quest Machine (that I am also using).
Is there events that I can listen to for Love/Hate and Quest machine?
My idea is to get that data and save it in one central place (I also want to support different saves for the game).
I try to use the Pixelcrushers system but I get this when I try to load:
I am struggling a bit to wrap my head around saving.
Currenly I am using Topdown engine and Inventory engine and generally save using Inventory engine.
I am trying to make everything centralized (for all my assets) and I think the Easy Save asset can handle all.
So what need is a way to keep track of changes in Love/hate and Quest Machine (that I am also using).
Is there events that I can listen to for Love/Hate and Quest machine?
My idea is to get that data and save it in one central place (I also want to support different saves for the game).
I try to use the Pixelcrushers system but I get this when I try to load:
Code: Select all
MissingReferenceException: The object of type 'UnityUIQuestDialogueUI' has been destroyed but you are still trying to access it.
Your script should either check if it is null or you should not destroy the object.
UnityEngine.Component.GetComponent[T] () (at /Users/bokken/build/output/unity/unity/Runtime/Export/Scripting/Component.bindings.cs:42)
PixelCrushers.QuestMachine.UnityUIBaseUI.Show () (at Assets/ThirdParty/Pixel Crushers/Quest Machine/Scripts/Quest UIs/Unity UI/Unity UI Content Templates/UnityUIBaseUI.cs:94)
PixelCrushers.QuestMachine.UnityUIQuestDialogueUI.ShowContents (PixelCrushers.QuestMachine.QuestParticipantTextInfo speaker, System.Collections.Generic.List`1[T] contents) (at Assets/ThirdParty/Pixel Crushers/Quest Machine/Scripts/Quest UIs/Unity UI/Unity UI Quest Dialogue UI/UnityUIQuestDialogueUI.cs:149)
PixelCrushers.QuestMachine.UnityUIQuestDialogueUI.ShowActiveQuest (PixelCrushers.QuestMachine.QuestParticipantTextInfo speaker, PixelCrushers.QuestMachine.Quest quest, PixelCrushers.QuestMachine.QuestParameterDelegate continueHandler, PixelCrushers.QuestMachine.QuestParameterDelegate backHandler) (at Assets/ThirdParty/Pixel Crushers/Quest Machine/Scripts/Quest UIs/Unity UI/Unity UI Quest Dialogue UI/UnityUIQuestDialogueUI.cs:254)
PixelCrushers.QuestMachine.QuestGiver.ShowActiveQuest (PixelCrushers.QuestMachine.Quest quest) (at Assets/ThirdParty/Pixel Crushers/Quest Machine/Scripts/Quest MonoBehaviours/Quest List/QuestGiver.cs:771)
PixelCrushers.QuestMachine.QuestGiver.StartMostRelevantDialogue () (at Assets/ThirdParty/Pixel Crushers/Quest Machine/Scripts/Quest MonoBehaviours/Quest List/QuestGiver.cs:682)
PixelCrushers.QuestMachine.QuestGiver.StartDialogue (UnityEngine.GameObject player) (at Assets/ThirdParty/Pixel Crushers/Quest Machine/Scripts/Quest MonoBehaviours/Quest List/QuestGiver.cs:595)
PixelCrushers.QuestMachine.QuestGiver.StartDialogueWithPlayer () (at Assets/ThirdParty/Pixel Crushers/Quest Machine/Scripts/Quest MonoBehaviours/Quest List/QuestGiver.cs:565)
CharacterQuestGiverActivation.Update () (at Assets/Game/General/Scripts/Extentions/Character/CharacterQuestGiverActivation.cs:12)