using BaseGames.Core.Events;
namespace BaseGames.Core
{
///
/// 难度服务接口(架构 §DifficultyModule)。
/// 提供当前难度档位及缩放参数,供跨程序集的游戏系统(战斗、商店、掉落等)查询,
/// 无需直接依赖 具体类型。
///
public interface IDifficultyService
{
/// 当前难度档位。
DifficultyLevel CurrentLevel { get; }
/// 当前档位对应的缩放配置。未配置时返回 null。
DifficultyScalerSO CurrentScaler { get; }
/// 切换到指定难度。SteelSoul 模式一旦选定不可降级。
void ChangeDifficulty(DifficultyLevel level);
/// 按档位查找缩放器,未配置时返回 null。
DifficultyScalerSO GetScaler(DifficultyLevel level);
}
}