using System.Threading.Tasks;
namespace BaseGames.Core
{
///
/// 存档服务接口。对外暴露存档系统的高层操作,供其他模块通过 ServiceLocator 访问。
/// 实现由 BaseGames.Core.Save 程序集的 SaveManager 提供。
///
public interface ISaveService
{
/// 将当前游戏状态写入指定存档槽。
Task SaveAsync(int slot);
/// 从指定存档槽加载游戏状态。成功返回 true,存档损坏/不存在返回 false。
Task LoadAsync(int slot);
/// 快速存档(覆盖当前活跃槽)。
void QuickSave();
/// 快速读档(从当前活跃槽加载)。
Task QuickLoadAsync();
/// 指定槽是否存在有效存档。
bool HasSave(int slot);
/// 当前活跃存档槽(0–2)。
int ActiveSlot { get; }
}
}