static void FillArray(XMLDebuffContainer file,ref int[] debuff_arr, DebuffTypes debuff_type) { List<int> tmp_lst = new List<int>(); foreach (Debuff item in file.debuff_arr) { if (item.type == debuff_type) tmp_lst.Add(item.id); } if(tmp_lst.Count>0) debuff_arr = tmp_lst.ToArray(); }
public static void ReloadDebuffs() { using (StreamReader mr = new StreamReader("Debuffs.xml")) { file = (XMLDebuffContainer)xml_serialize.Deserialize(mr); } if (file.debuff_arr.Count > 0) { FillArray(file,ref CurseToDispellArray,DebuffTypes.Curse); FillArray(file,ref MagicToDispellArray, DebuffTypes.Magic); FillArray(file,ref PoisonToDispellArray, DebuffTypes.Poison); FillArray(file,ref DiseaseToDispellArray, DebuffTypes.Disease); } }
public void AddDebuff(int id, string name, string instance_name, DebuffTypes type) { using (StreamReader mr = new StreamReader("Debuffs.xml")) { file = (XMLDebuffContainer)xml_serialize.Deserialize(mr); } Debuff debuf = new Debuff(); debuf.id = id; debuf.name = name; debuf.type = type; debuf.instance_name = instance_name; file.debuff_arr.Add(debuf); using (StreamWriter sw = new StreamWriter("Debuffs.xml")) { xml_serialize.Serialize(sw, file); sw.Flush(); } }