29 lines
876 B
C#
29 lines
876 B
C#
namespace AibisDream.SaveSystem
|
||
{
|
||
/// <summary>
|
||
/// sections["screen"]:屏幕饱和度与演出淡入淡出遮罩。
|
||
/// 委托 <see cref="ScreenSnapshotHelper"/>;RestoreOrder=70,通常在表现类最后还原。
|
||
/// </summary>
|
||
public class ScreenSnapshotProvider : ISyncSnapshotProvider
|
||
{
|
||
public string SaveId => SnapshotProviderIds.Screen;
|
||
public int RestoreOrder => 70;
|
||
|
||
public object Capture()
|
||
{
|
||
return ScreenSnapshotHelper.Capture();
|
||
}
|
||
|
||
public void Restore(object dto, SnapshotRestoreContext context)
|
||
{
|
||
if (dto is not ScreenSnapshotDto screen)
|
||
{
|
||
context.Warn("[ScreenSnapshotProvider] DTO 类型不匹配,跳过还原。");
|
||
return;
|
||
}
|
||
|
||
ScreenSnapshotHelper.Restore(screen);
|
||
}
|
||
}
|
||
}
|