Files

⚙️ ConfigLoader 配置加载模块

此模块负责配置文件的加载与检测,依赖于 Common 通用模块,请确保已安装该模块。

主要功能

  • 📂 配置文件加载
  • 🔍 配置字段缺失检测
  • 配置字段冗余检测
  • ⚙️ 自动化插件安装
  • 📝 日志标准化输出

⚠️ 注意事项

导入项目后,会弹出插件安装提示框。点击“确定”后,插件将自动安装;若点击“取消”,脚本重新编译时仍会再次弹出提示。

  • 插件安装需要一定时间,请耐心等待。安装完成后会有弹窗提示。
  • 安装完成后,会自动生成配置文件夹 Configs,请将游戏配置文件复制到此文件夹中。
  • 请勿修改配置文件名。如需替换配置文件,请先删除旧文件,确保文件夹中每个配置只有一份。
  • 游戏首次运行时,会自动将该文件夹复制到游戏的数据存储位置。

🚀 使用指南

在登录成功后,调用 ConfigLoaderInit 方法传入所需参数,具体参数请查看方法注释。

注意:

  • List 类型的配置需继承 ConfigModel<T, T0>,不再需要之前的 IDataList 接口。
  • 非 List 类型配置继承 ConfigModel<T>

初始化示例

var loginModel = NetworkKit.Instance.GetLoginModel();
ConfigLoader.Instance.Init(
    loginModel.setting,
    loginModel.cdn_url,
    new List<ConfigModel> {
        new CommonModel("Common"),
        new SignDailyRewardModel("SignDailyReward"),
        new TurntableModel("turntable"),
        // 其它配置...
    },
    state => {
        Debug.Log($"配置加载状态: {state}");
    },
    (errorName, message) => {
        Debug.LogError($"配置解析错误: {errorName},错误信息:{message}");
    });

🔍 读取配置示例

// 读取基础配置
var model = ConfigLoader.Instance.GetConfig<CommonModel>();

// 解析自定义配置
ConfigLoader.Instance.ParesPersonalizedConfig(new PrizeWheelDataModel("PrizeWheelData"), "prize");

// 获取自定义配置
var personalizedConfig = ConfigLoader.Instance.GetPersonalizedConfig<PrizeWheelDataModel>("prize");