public void ChangeSave() { string sysSave = JsonConvert.SerializeObject(tempData.saveInfo); SaveLoadTool.SaveFile(SaveLoadTool.GetSavePath("datasv.sav"), sysSave); RefreshSavePic(); }
/// <summary> /// 初始化多周目数据 /// </summary> private void InitMultiplay() { string filename = "datamp.sav"; string savepath = SaveLoadTool.GetSavePath(filename); //判断是否含有datamp文件 if (!SaveLoadTool.IsFileExists(savepath)) { //若不存在 则生成默认数据表 DefaultMultiData(); //并写入本地文件 string toSave = JsonConvert.SerializeObject(multiData); SaveLoadTool.SaveFile(savepath, toSave); } else { try { //若文件存在 则读取二周目数据 string toLoad = SaveLoadTool.LoadFile(savepath); multiData = JsonConvert.DeserializeObject <MultiData>(toLoad); } catch { Debug.LogError("存档文件不符,已重置"); //出差错则覆盖本地文件 DefaultMultiData(); string toSave = JsonConvert.SerializeObject(multiData); SaveLoadTool.SaveFile(savepath, toSave); } } }
private void InitSystem() { string filename = "config.sav"; string savepath = SaveLoadTool.GetSavePath(filename); if (!SaveLoadTool.IsFileExists(savepath)) { //若不存在则创建默认数据 ResetSysConfig(); string toSave = JsonConvert.SerializeObject(configData); SaveLoadTool.SaveFile(savepath, toSave); } else { try { //读取config string toLoad = SaveLoadTool.LoadFile(savepath); configData = JsonConvert.DeserializeObject <ConfigData>(toLoad); } catch { Debug.LogError("存档文件不符,已重置"); //出错则采用默认 并覆盖原文件 ResetSysConfig(); string toSave = JsonConvert.SerializeObject(configData); SaveLoadTool.SaveFile(savepath, toSave); } } }
public void Delete(int i) { //删除存档 string filename = "data" + i + ".sav"; SaveLoadTool.DeleteFile(SaveLoadTool.GetSavePath(filename)); //删除截图 string picname = "data" + i + ".png"; SaveLoadTool.DeleteFile(SaveLoadTool.GetSavePath(picname)); //更新存档信息 Dictionary <int, SavingInfo> savedic = tempData.saveInfo; if (savedic.ContainsKey(i)) { savedic.Remove(i); } //写入系统存档 string sysSave = JsonConvert.SerializeObject(savedic); SaveLoadTool.SaveFile(SaveLoadTool.GetSavePath("datasv.sav"), sysSave); RefreshSavePic(); }
/* demo 1.22 去除 * public void SetGameVar(string key, object value) * { * datapool.WriteGameVar(key, value); * } * * public void SetInTurnVar(string key, object value) * { * datapool.WriteInTurnVar(key, value); * } * * public void SetSystemVar(string key, object value) * { * datapool.WriteSystemVar(key, value); * } * public T GetGameVar<T>(string key) * { * return (T)datapool.GetGameVar(key); * } * * public T GetInTurnVar<T>(string key) * { * return (T)datapool.GetInTurnVar(key); * } * * public T GetSystemVar<T>(string key) * { * return (T)datapool.GetSystemVar(key); * } * * public bool ContainsGameVar(string key) { return datapool.GetGameVarTable().ContainsKey(key); } * * public bool ContainsInTurnVar(string key) { return datapool.GetInTurnVarTable().ContainsKey(key); } * * DataPool GetDataPool() { return datapool; } * * public Hashtable GetGameVars() * { * return datapool.GetGameVarTable(); * } * public Hashtable GetInTurnVars() * { * return datapool.GetInTurnVarTable(); * } * public Hashtable GetSystemVars() * { * return datapool.GetSystemTable(); * } */ #endregion #region 存读档用 public void Save(int i) { string toSave = DataToJsonString(); string filename = "data" + i + ".sav"; SaveLoadTool.SaveFile(SaveLoadTool.GetSavePath(filename), toSave); //储存截图 string picname = "data" + i + ".png"; byte[] picdata = (byte[])tempData.GetTempVar("缩略图"); SaveLoadTool.CreatByteFile(SaveLoadTool.GetSavePath(picname), picdata); //更新存档信息 Dictionary <int, SavingInfo> savedic = tempData.saveInfo; //TODO: 获取状态 SavingInfo info = new SavingInfo(); info.gameMode = gameData.MODE; info.saveTime = DateTime.Now.ToString("yyyy/MM/dd HH:mm"); info.saveText = "存档了!"; info.currentText = tempData.currentText; info.picPath = picname; //SavingInfo info = new SavingInfo(gamemode, savetime, customtext, picname); if (savedic.ContainsKey(i)) { savedic[i] = info; } else { savedic.Add(i, info); } //写入系统存档 string sysSave = JsonConvert.SerializeObject(savedic); SaveLoadTool.SaveFile(SaveLoadTool.GetSavePath("datasv.sav"), sysSave); RefreshSavePic(); }