/// <summary> /// 读取游戏的全局参数 /// </summary> private void LoadFromXML_GlobalParameterData() { //参数检查 if (string.IsNullOrEmpty(_FileNameByGlobalParameterData)) { Debug.LogError("读取游戏全局参数失败!"); return; } try { //读取XML数据 string strTemp = XmlOperation.GetInstance().LoadXML(_FileNameByGlobalParameterData); //反序列化 Mod_GlobalParaData dpd = XmlOperation.GetInstance().DeserializeObject(strTemp, typeof(Mod_GlobalParaData)) as Mod_GlobalParaData; //赋值 GlobalParaMgr.PlayerName = dpd.PlayerName; GlobalParaMgr.NextSceneName = dpd.NextSceneName; GlobalParaMgr.CurPlayerType = dpd.PlayerType; if (GlobalParaMgr.CurGameStatus != GameStatus.Continue) { GlobalParaMgr.CurGameStatus = GameStatus.Continue; } } catch { Debug.LogError("读取游戏全局参数失败!"); } }
/// <summary> /// 存储游戏的全局参数 /// </summary> private void SaveToXML_GlobalParameterData() { //提取属性数值 //这里的局部变量类型可以全部统一使用var SceneEnum sceneName = GlobalParaMgr.NextSceneName; string playerName = GlobalParaMgr.PlayerName; PlayerType playerType = GlobalParaMgr.CurPlayerType; //实例化类 Mod_GlobalParaData gpd = new Mod_GlobalParaData(sceneName, playerName, playerType); //对象序列化 string fileData = XmlOperation.GetInstance().SerializeObject(gpd, typeof(Mod_GlobalParaData)); //创建XML文件,且写入 if (!String.IsNullOrEmpty(_FileNameByGlobalParameterData)) { XmlOperation.GetInstance().CreateXML(_FileNameByGlobalParameterData, fileData); } }