public static void GameLoad(string name) { Game.Data.XmlParagraphs.Clear(); Game.Data.Triggers.Clear(); Healing.Clear(); if (String.IsNullOrEmpty(name)) { return; } Gamebook.Description gamebook = Gamebook.List.GetDescription(name); string content = DependencyService.Get <Abstract.IAssets>().GetFromAssets(gamebook.XmlBook); XmlDocument xmlFile = new XmlDocument(); xmlFile.LoadXml(content); foreach (XmlNode xmlNode in xmlFile.SelectNodes("Paragraphs/Paragraph")) { Game.Data.XmlParagraphs.Add(Game.Xml.IntParse(xmlNode["ID"]), xmlNode); } Game.Data.Paragraphs = gamebook.Paragraphs; Game.Data.Actions = gamebook.Actions; Game.Data.Constants = gamebook.Constants; Game.Data.Protagonist = gamebook.Protagonist; Game.Data.Save = gamebook.Save; Game.Data.Load = gamebook.Load; Game.Data.CheckOnlyIf = gamebook.CheckOnlyIf; Game.Data.ShowDisabledOption = gamebook.ShowDisabledOption; }
public static void Load(string saveLine) { HealingList.Clear(); if (String.IsNullOrEmpty(saveLine)) { return; } List <string> allHealing = saveLine.Split('|').ToList(); foreach (string currentHealing in allHealing) { List <string> healingParam = currentHealing.Split(',').ToList(); Healing healing = new Healing { Name = healingParam[0], Level = int.Parse(healingParam[1]), Portion = int.Parse(healingParam[2]), }; HealingList.Add(healing); } }
public static void Save() { string triggers = String.Join(",", Game.Data.Triggers); string healing = Healing.Save(); int paragraph = Game.Data.CurrentParagraphID; string character = Game.Data.Save(); App.Current.Properties[CurrentGameName] = String.Format("{0}@{1}@{2}@{3}", paragraph, triggers, healing, character); }
public static int Load() { string saveLine = (string)App.Current.Properties[CurrentGameName]; string[] save = saveLine.Split('@'); Game.Data.CurrentParagraphID = int.Parse(save[0]); Game.Data.Triggers = save[1].Split(',').ToList(); Healing.Load(save[2]); Game.Data.Load(save[3]); return(Game.Data.CurrentParagraphID); }
public static void Add(string name, int healing, int portions) { foreach (Healing currentHealing in HealingList.Where(x => x.Name == name)) { currentHealing.Portion += portions; return; } Healing newHealing = new Healing { Name = name, Level = healing, Portion = portions, }; HealingList.Add(newHealing); }