GwWuYou 807dbc482e feat(setting): 添加设置管理系统和Godot平台实现
- 实现了SettingsModel用于管理应用程序设置部分
- 创建了SettingsSystem用于应用各种设置配置
- 添加了AudioSettings和GraphicsSettings基础设置类
- 定义了ISettingsModel、ISettingsSystem等核心接口
- 实现了GodotAudioApplier用于应用音频设置到Godot音频系统
- 创建了GodotGraphicsSettings用于管理游戏图形显示设置
- 添加了GodotFileStorage特化文件存储实现
- 实现了Godot路径扩展方法IsUserPath、IsResPath、IsGodotPath
- 添加了AudioBusMap音频总线映射配置类
2026-01-12 21:07:27 +08:00

32 lines
796 B
C#

using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using GFramework.Core.Abstractions.system;
namespace GFramework.Game.Abstractions.setting;
/// <summary>
/// 定义设置系统的接口,提供应用各种设置的方法
/// </summary>
public interface ISettingsSystem : ISystem
{
/// <summary>
/// 应用所有可应用的设置
/// </summary>
Task ApplyAll();
/// <summary>
/// 应用指定类型的设置
/// </summary>
Task Apply(Type settingsType);
/// <summary>
/// 应用指定类型的设置(泛型版本)
/// </summary>
Task Apply<T>() where T : class, ISettingsSection;
/// <summary>
/// 批量应用多个设置类型
/// </summary>
Task Apply(IEnumerable<Type> settingsTypes);
}