Skip to content

v0.6.13

Choose a tag to compare

@SunYanbox SunYanbox released this 06 Mar 06:32
· 36 commits to main since this release

新增

  • 国际化支持

    • 为统计页面导航链接添加多语言支持 (webUI.navStatsPage),现已支持中文、英文、韩文显示
    • 为设置页面的“修复存档”按钮添加 MudTooltip 提示,详细说明该功能的使用场景与注意事项(webUI.fixArchiveDesc)
  • 日志系统增强

    • RaidRecordMod 新增静态 Logger 属性 (ModLogger),便于各组件统一日志输出
    • 为多个页面和组件添加关键流程的 Debug/Info 级别日志记录:
      • Home - 账号初始化流程
      • RecordsList - 删除记录操作
      • PricePage、QuickEquipmentWidget - 购买物资的详细参数
      • ClaimCompensationWidget - 理赔操作(记录账户ID、金额、成功/失败状态)
    • 在 ProfileInfoWidget、SptInfoMudCard、BotProfileInfoCard 等组件的生命周期方法中增加对 SptProfile 为空的 Warn 级别日志
  • 异常处理优化

    • 图表组件 (GroupByExistAndMapBarChart、GroupBySideChart) 在数据为空时调用 logger.Error 并传入 ArgumentNullException,提供完整堆栈信息
    • 在 PricePage 和 QuickEquipmentWidget 的购买逻辑中使用 try-catch 包裹 JsonUtil.Serialize 调用,防止序列化失败导致主流程中断
  • 功能优化

    • ModConfig 类中暴露 SptLogger 属性,便于 Razor 页面直接访问 SPT 原生日志接口
    • 为 SettingPage.FixAllArchive 方法增加 Debug 日志和 Warning 级别提示,说明重新计算价格的风险

更改

  • 物品发放逻辑统一

    • ModMailService.SendItemsToPlayer 方法新增 ModGiveIsFIR 配置参数,控制发放物品是否标记为“行动中获取”(FIR)
    • PricePage、QuickEquipmentWidget 及聊天机器人命令 BuyCmd 在发放物品时统一传入 _modConfig.Configs.ModGiveIsFIR 配置值
    • BuyCmd 类中注入 ModConfig 依赖,确保命令行购买行为与 WebUI 端一致
  • 代码清理与重构

    • 移除 GroupByExistAndMapBarChart 中未使用的硬编码测试数据
    • 删除 GroupByExistAndMapBarChart 中冗余的 _groupByExitsSeries.Clear() 调用
    • 将部分局部变量声明从显式类型改为 var(如 CustomStaticRouter、Home),提升代码简洁性
    • 在 SettingPage 中提取 Snackbar 消息字符串至变量 resultEnd,便于日志复用
    • 优化 SettingPage 中的金额转换逻辑,显式定义 amountLong 变量提高代码可读性

修复

  • 核心逻辑修复
    • 修复使用 Suntion 扩展重构后,未正确传入 FIR 状态配置的错误
    • 在 CustomStaticRouter 的 HandleRaidStart 和 HandleRaidEnd 方法中增加空值检查,确保在 _injectableClasses 为空时仍能通过 RaidRecordMod.Logger 记录错误

移除

  • 移除 GroupByExistAndMapBarChart 中遗留的测试代码和冗余调用

病毒检测报告:
RaidRecord-0.6.13.7z