using System.Collections;
using AibisDream.Framework;
using Newtonsoft.Json.Linq;
namespace AibisDream.SaveSystem
{
///
/// 深度维修子系统的旧 IData 注册表(基于 )。
///
/// FixSystem / Eye / Chip 等仍通过此处 RegisterData;尚未纳入新 。
/// P5 评估后迁移或废弃;与 、快照 I/O 分离。
///
///
public static class DeepRepairDataRegistry
{
private static readonly DataContainer Container = new();
public static void RegisterData(T data) where T : IData
{
Container.Register(data);
}
public static void UnregisterData() where T : class, IData
{
Container.Unregister();
}
/// 旧格式存档 systemData 段还原;按 LoadIndex 顺序执行各 IData.Load()。
public static IEnumerator LoadByJson(JObject dataJson)
{
if (dataJson == null)
{
yield break;
}
yield return Container.LoadByJson(dataJson);
}
}
}