public void CreateDefaultSave() { QuestStageData[] questStagesArray = { new QuestStageData { quest = Str.Main, stage = 0 }, new QuestStageData { quest = Str.Warbler, stage = 0 }, new QuestStageData { quest = Str.Frog, stage = 0 }, new QuestStageData { quest = Str.Turtle, stage = 0 } }; PlayerData playerData = new PlayerData { position = ToArray(new Vector3(369.7f, 32.45f, 411.16f)), rotation = ToArray(new Quaternion(0f, 0f, 0f, 1f)) }; PlayerHolding playerHolding = new PlayerHolding { itemHolding = QuestItem.QuestItemEnum.None }; WarblerChildrenStatus warblerChildrenStatus = new WarblerChildrenStatus { foundChild1 = false, foundChild2 = false, foundChild3 = false }; ItemStatus itemStatus = new ItemStatus { foundSeed = false, foundSoil = false, foundRain = false, seedPos = ToArray(seedItem.transform.position), soilPos = ToArray(soilItem.transform.position), rainPos = ToArray(rainItem.transform.position) }; Data saveData = new Data { questStageData = questStagesArray, playerData = playerData, playerHolding = playerHolding, warblerChildrenStatus = warblerChildrenStatus, itemStatus = itemStatus }; SerializeData(Str.SaveDefaultName, saveData); //SerializeJson(saveDefaultName, saveData); }
public void SaveData() { return; Logger.Warning("Saving data..."); QuestStageData[] questStagesArray = { new QuestStageData { quest = Str.Main, stage = mainQuest.QuestStage }, new QuestStageData { quest = Str.Warbler, stage = warblerQuest.QuestStage }, new QuestStageData { quest = Str.Frog, stage = frogQuest.QuestStage }, new QuestStageData { quest = Str.Turtle, stage = turtleQuest.QuestStage } }; PlayerData playerData = new PlayerData { position = ToArray(Services.PlayerMovement.transform.position), rotation = ToArray(Services.PlayerMovement.transform.rotation) }; PlayerHolding playerHolding = new PlayerHolding { itemHolding = Services.PlayerItemHolder._holdingItem ? Services.PlayerItemHolder._currentlyHeldItem.GetComponent <QuestItem>().itemEnum : QuestItem.QuestItemEnum.None }; Yarn.Unity.InMemoryVariableStorage questMemory = Services.DialogueController.InMemoryVariableStorage; WarblerChildrenStatus warblerChildrenStatus = new WarblerChildrenStatus { foundChild1 = questMemory.GetValue(Str.Child1String).AsBool, foundChild2 = questMemory.GetValue(Str.Child2String).AsBool, foundChild3 = questMemory.GetValue(Str.Child3String).AsBool }; ItemStatus itemStatus = new ItemStatus { foundSeed = questMemory.GetValue(Str.SeedString).AsBool, foundSoil = questMemory.GetValue(Str.SoilString).AsBool, foundRain = questMemory.GetValue(Str.RainString).AsBool, seedPos = ToArray(seedItem.transform.position), soilPos = ToArray(soilItem.transform.position), rainPos = ToArray(rainItem.transform.position) }; Data saveData = new Data { questStageData = questStagesArray, playerData = playerData, playerHolding = playerHolding, warblerChildrenStatus = warblerChildrenStatus, itemStatus = itemStatus }; SerializeData(Str.SaveName, saveData); //SerializeJson(saveName, saveData); Logger.Warning("Data saved successfully."); }