Files
noname-shuying/pve/boss/merge.js
T
Diuse 49cb75d813 ✨ feat: 整合活动BOSS主题并完善捉鬼驱邪内容
✨ feat: 统一活动BOSS主题入口与武将包合并流程
✨ feat: 补充十二生肖及捉鬼驱邪武将、技能和配音资源
✨ feat: 支持更新时安全清理废弃文件与目录
2026-08-12 03:32:07 +08:00

23 lines
918 B
JavaScript

// 合并各主题的同类数据;重复 ID 保留先加载项,跳过后加载项,避免中断整个 BOSS 包。
const mergeBossModules = (dataType, modules) => {
const result = {};
for (const [moduleName, data] of modules) {
for (const [id, value] of Object.entries(data || {})) {
if (Object.prototype.hasOwnProperty.call(result, id)) {
console.warn(`术樱包活动BOSS:跳过${moduleName}中重复的${dataType}ID“${id}”`);
continue;
}
result[id] = value;
}
}
return result;
};
// 从标准主题入口中提取指定字段,再复用统一的重复 ID 处理规则。
const mergeBossSection = (dataType, modules, section) => {
return mergeBossModules(dataType, modules.map(([moduleName, data]) => [moduleName, data?.[section]]));
};
export { mergeBossSection };
export default mergeBossModules;