public void LoadQuestData() { TextAsset textAsset = Resources.Load("Data/Quests/QuestData") as TextAsset; var serializer = new System.Xml.Serialization.XmlSerializer(typeof(QuestDataCollection)); using (var reader = new System.IO.StringReader(textAsset.text)) { this.questDataCollection = (QuestDataCollection)serializer.Deserialize(reader); } //set value progress and step for (int i = 0; i < questDataCollection.ListQuestData.Count; i++) { string questID = questDataCollection.ListQuestData [i].QuestID; int requireValue = questDataCollection.ListQuestData [i].RequireValue.Value; int currentValue = GetCurrentProgressValue(questID); int currentStep = GetCurrentStep(questID); float increasePercentRequireValue = questDataCollection.ListQuestData [i].RequireValue.PercentIncreasePerStep; questDataCollection.ListQuestData [i].RequireValue.Value = (int)Master.IncreaseValues(requireValue, currentStep, increasePercentRequireValue); int star = questDataCollection.ListQuestData [i].Reward.Star; int gem = questDataCollection.ListQuestData [i].Reward.Gem; float increasePercentReward = questDataCollection.ListQuestData [i].Reward.PercentIncreasePerStep; questDataCollection.ListQuestData [i].Reward.Star = (int)Master.IncreaseValues(star, currentStep, increasePercentReward); questDataCollection.ListQuestData [i].Reward.Gem = (int)Master.IncreaseValues(gem, currentStep, increasePercentReward); questDataCollection.ListQuestData [i].CurrentStep = currentStep; questDataCollection.ListQuestData [i].CurrentProgressValue = currentValue; } }
public void Save(QuestDataCollection questDataCollection) { string path = Application.dataPath + "/Resources/Data/Quests/QuestData.xml"; var serializer = new XmlSerializer(typeof(QuestDataCollection)); using (var stream = new FileStream(path, FileMode.Create)) { serializer.Serialize(stream, questDataCollection); Debug.Log("Saved XML to " + path); } }