/// <summary> /// 读取玩家的扩展数据 /// </summary> private void LoadFromXML_PlayerExtendedData() { //参数检查 if (string.IsNullOrEmpty(_FileNameByPlayerExtendedData)) { Debug.LogError("读取玩家扩展参数失败!"); return; } try { //读取XML数据 string strTemp = XmlOperation.GetInstance().LoadXML(_FileNameByPlayerExtendedData); //反序列化 Mod_PlayerExtendedData ped = XmlOperation.GetInstance().DeserializeObject(strTemp, typeof(Mod_PlayerExtendedData)) as Mod_PlayerExtendedData; //赋值 Mod_PlayerExtendedDataProxy.GetInstance().EXP = ped.EXP; Mod_PlayerExtendedDataProxy.GetInstance().KillNum = ped.KillNum; Mod_PlayerExtendedDataProxy.GetInstance().Level = ped.Level; Mod_PlayerExtendedDataProxy.GetInstance().Gold = ped.Gold; Mod_PlayerExtendedDataProxy.GetInstance().Diamond = ped.Diamond; } catch { Debug.LogError("读取玩家扩展参数失败!"); } }
/// <summary> /// 存储玩家的扩展数据 /// </summary> private void SaveToXML_PlayerExtendedData() { //数据准备(提取属性数值) int exp = _PlayerExtendedDataProxy.EXP; int killNum = _PlayerExtendedDataProxy.KillNum; int level = _PlayerExtendedDataProxy.Level; int gold = _PlayerExtendedDataProxy.Gold; int diamond = _PlayerExtendedDataProxy.Diamond; //实例化类 Mod_PlayerExtendedData ped = new Mod_PlayerExtendedData(exp, killNum, level, gold, diamond); //对象序列化 string fileData = XmlOperation.GetInstance().SerializeObject(ped, typeof(Mod_PlayerExtendedData)); //创建XML文件,且写入 if (!String.IsNullOrEmpty(_FileNameByPlayerExtendedData)) { XmlOperation.GetInstance().CreateXML(_FileNameByPlayerExtendedData, fileData); } }