/// <summary> /// 读取玩家的背包数据 /// </summary> private void LoadFromXML_PlayerPackageData() { //参数检查 if (string.IsNullOrEmpty(_FileNameByPlayerPackageData)) { Debug.LogError("读取玩家背包页面参数失败!"); return; } try { //读取XML数据 string strTemp = XmlOperation.GetInstance().LoadXML(_FileNameByPlayerPackageData); //反序列化 Mod_PlayerPackageData ppd = XmlOperation.GetInstance().DeserializeObject(strTemp, typeof(Mod_PlayerPackageData)) as Mod_PlayerPackageData; //赋值 Mod_PlayerPackageDataProxy.GetInstance().Item_Weapon_1.Count = ppd.Item_Weapon_1.Count; Mod_PlayerPackageDataProxy.GetInstance().Item_Shield_1.Count = ppd.Item_Shield_1.Count; Mod_PlayerPackageDataProxy.GetInstance().Item_Boot_1.Count = ppd.Item_Boot_1.Count; Mod_PlayerPackageDataProxy.GetInstance().Item_HPPotion_1.Count = ppd.Item_HPPotion_1.Count; Mod_PlayerPackageDataProxy.GetInstance().Item_MPPotion_1.Count = ppd.Item_MPPotion_1.Count; } catch { Debug.LogError("读取玩家背包页面参数失败!"); } }
/// <summary> /// 存储玩家的背包数据 /// </summary> private void SaveToXML_PlayerPackageData() { //数据准备(提取属性数值) int weapon_1_Count = _PlayerPackageDataProxy.Item_Weapon_1.Count; int shield_1_Count = _PlayerPackageDataProxy.Item_Shield_1.Count; int boot_1_Count = _PlayerPackageDataProxy.Item_Boot_1.Count; int hpPotion_1_Count = _PlayerPackageDataProxy.Item_HPPotion_1.Count; int mpPotion_1_Count = _PlayerPackageDataProxy.Item_MPPotion_1.Count; //实例化类 Mod_PlayerPackageData ppd = new Mod_PlayerPackageData(weapon_1_Count, shield_1_Count, boot_1_Count, hpPotion_1_Count, mpPotion_1_Count); //对象序列化 string fileData = XmlOperation.GetInstance().SerializeObject(ppd, typeof(Mod_PlayerPackageData)); //创建XML文件,且写入 if (!String.IsNullOrEmpty(_FileNameByPlayerPackageData)) { XmlOperation.GetInstance().CreateXML(_FileNameByPlayerPackageData, fileData); } }