石头完善

This commit is contained in:
2026-02-09 14:40:41 +08:00
parent 906aa86f13
commit 6d4f6d3f9f
9 changed files with 263 additions and 17 deletions
+26 -14
View File
@@ -4,11 +4,14 @@ using System.Globalization;
using System.IO;
using System.Linq;
using AibisDream.Framework;
using AibisDream.Kit;
using AibisDream.Utility;
using AibisDream.UI;
using Newtonsoft.Json.Linq;
using UnityEngine;
using Yarn.Unity;
namespace AibisDream
{
public class StorageSystem : VariableStorageBehaviour
@@ -219,27 +222,36 @@ namespace AibisDream
public void Save()
{
// 先序列化Yarn变量
var saveFile = new JObject();
ActionKit.Sequence()
.Callback(() => UIManager.Instance.GetPanel<InfoPanel>().ShowSaveLoading())
.Delay(1f)
.Callback(() => UIManager.Instance.GetPanel<InfoPanel>().HideSaveLoading())
.Start(this);
// 保存版本号
saveFile["version"] = $"Ver.{Application.version}";
saveFile["time"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
using (new CodeTimer("Save"))
{
// 先序列化Yarn变量
var saveFile = new JObject();
// 保存系统数据
saveFile["systemData"] = _dataContainer.SaveAsJson();
// 保存版本号
saveFile["version"] = $"Ver.{Application.version}";
saveFile["time"] = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
// 保存对话变量
var (floatDict, stringDict, boolDict) = GetAllVariables();
saveFile["floatDict"] = JObject.FromObject(floatDict);
saveFile["stringDict"] = JObject.FromObject(stringDict);
saveFile["boolDict"] = JObject.FromObject(boolDict);
// 保存系统数据
saveFile["systemData"] = _dataContainer.SaveAsJson();
// 存为Json
JsonUtil.SaveJObject(saveFile, GetSavePath());
// 保存对话变量
var (floatDict, stringDict, boolDict) = GetAllVariables();
saveFile["floatDict"] = JObject.FromObject(floatDict);
saveFile["stringDict"] = JObject.FromObject(stringDict);
saveFile["boolDict"] = JObject.FromObject(boolDict);
// 存为Json
JsonUtil.SaveJObject(saveFile, GetSavePath());
#if !UNITY_EDITOR
DeleteOldSave();
#endif
}
}
private void DeleteOldSave()