36 lines
1.1 KiB
C#
36 lines
1.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using Newtonsoft.Json.Linq;
|
|
|
|
namespace AibisDream.SaveSystem
|
|
{
|
|
/// <summary>
|
|
/// 深度维修是否纳入新快照、以何种粒度纳入(P5 逐个定案)。
|
|
/// </summary>
|
|
public enum DeepRepairSavePolicy
|
|
{
|
|
/// <summary>完整阶段终点状态写入 deepRepair.sections。</summary>
|
|
Supported,
|
|
|
|
/// <summary>只存简化后的关键字段。</summary>
|
|
Simplified,
|
|
|
|
/// <summary>不存;读档回到进入该维修前的可存点。</summary>
|
|
Dropped
|
|
}
|
|
|
|
/// <summary>
|
|
/// <see cref="SaveSnapshot.deepRepair"/> 占位段。
|
|
/// P1 捕获时不写入;读档时缺省或 sections 为空则不报错。
|
|
/// 正式实现后替代/收敛 <see cref="DeepRepairDataRegistry"/> 的旧 IData 路径。
|
|
/// </summary>
|
|
[Serializable]
|
|
public class DeepRepairSnapshot
|
|
{
|
|
public DeepRepairSavePolicy policy = DeepRepairSavePolicy.Dropped;
|
|
|
|
/// <summary>按维修模块 id 分子段,具体 key 在 P5 定义。</summary>
|
|
public Dictionary<string, JObject> sections = new();
|
|
}
|
|
}
|