fix: 任务面板重构
This commit is contained in:
@@ -146,7 +146,7 @@ Postflight 校验
|
||||
|
||||
Provider 使用 `ISyncSnapshotProvider` 或 `IAsyncSnapshotProvider` 显式声明同步/异步恢复;异步 Provider 必须把等待过程返回给编排层,禁止内部 fire-and-forget。
|
||||
|
||||
## 快照 JSON 结构(schemaVersion = 1)
|
||||
## 快照 JSON 结构(schemaVersion = 2)
|
||||
|
||||
| 字段 | 含义 |
|
||||
| --- | --- |
|
||||
@@ -191,11 +191,11 @@ Fix 场景各 State 的 `Enter()` 通常包含相机过渡、Timeline 播放、F
|
||||
| --- | --- | --- | --- |
|
||||
| `punchTape` | `PunchTapeSnapshotDto` | 63 | 打孔带收藏 |
|
||||
| `fix` | `FixSnapshotDto` | 65 | FixSceneDirector 宏观模式(state + args) |
|
||||
| `fixPanel` | `FixPanelSnapshotDto` | 66 | FixPanel 壳层 + 线缆/插头 + TaskPanel(展开状态与任务列表) |
|
||||
| `fixPanel` | `FixPanelSnapshotDto` | 66 | FixPanel 壳层 + 线缆/插头 + TaskPanel(请求展开状态与任务列表) |
|
||||
| `bodyModule` | `BodyModuleSnapshotDto` | 67 | 插线模块物理态 |
|
||||
| `eye` | `EyeSnapshotDto` | 68 | Eye 叙事阶段 |
|
||||
|
||||
**还原顺序**:punchTape → fix(cue)→ fixPanel → bodyModule → eye → showcase → day2SleepPresentation → playTool → screen。`fixPanel` 须在 `fix` 之后,以覆盖 Cue `EnterImmediate` 中的 `ResetPlug`;D2 动态表现须在通用 Showcase 图片之后恢复,才能叠加虚焦、缩放或场景专属动画。
|
||||
**还原顺序**:punchTape → fix(cue)→ fixPanel → bodyModule → eye → showcase → day2SleepPresentation → playTool → screen。`fixPanel` 须在 `fix` 之后,以覆盖 Cue `EnterImmediate` 中的 `ResetPlug`,并让 Memory Cue 先建立 TaskPanel 临时隐藏状态;D2 动态表现须在通用 Showcase 图片之后恢复,才能叠加虚焦、缩放或场景专属动画。
|
||||
|
||||
**维修场景门控**(`FixSceneSnapshotHelper`):上述 section 仅在 `FixSystemCenter.Instance != null` 时 Capture/Restore。
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ namespace AibisDream.SaveSystem
|
||||
/// </summary>
|
||||
public static class SaveSnapshotSchema
|
||||
{
|
||||
public const int CurrentVersion = 1;
|
||||
public const int CurrentVersion = 2;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
@@ -269,7 +269,7 @@ namespace AibisDream.SaveSystem
|
||||
/// <summary>Yarn 行 id,如 <c>line:01dade5</c>。</summary>
|
||||
public string lineId;
|
||||
|
||||
/// <summary>存档时 UI 显示的完整文本(含 <c>● </c> 前缀)。</summary>
|
||||
/// <summary>存档时已完成 substitutions 的本地化文本,不含 UI 圆点前缀。</summary>
|
||||
public string text;
|
||||
}
|
||||
|
||||
@@ -290,8 +290,8 @@ namespace AibisDream.SaveSystem
|
||||
/// <summary>插头插入的 BodyModule 名(data.moduleName);null/空 = 未插入。</summary>
|
||||
public string pluggedModuleName;
|
||||
|
||||
/// <summary>TaskPanel 是否处于展开位(<c>show_task_panel</c> 后)。</summary>
|
||||
public bool isTaskPanelVisible;
|
||||
/// <summary>剧情是否要求 TaskPanel 展开;Memory 等临时隐藏状态不写入存档。</summary>
|
||||
public bool isTaskPanelRequestedVisible;
|
||||
|
||||
/// <summary>TaskPanel 当前未完成任务列表(保持插入顺序)。</summary>
|
||||
public List<TaskEntrySnapshotDto> tasks = new();
|
||||
|
||||
Reference in New Issue
Block a user