根据 heroSet.ts 中的 HeroInfo 配置,更新 CardSet.ts 的 CardPoolList。 - 新增英雄卡条目 5012 和 5013 - 更新现有英雄卡的 lv 字段以匹配 HeroInfo.cards_lv - 按 lv 升序对英雄卡进行排序,保持非英雄卡顺序不变
2.5 KiB
2.5 KiB
name, description
| name | description |
|---|---|
| HeroInfo_to_CardPoolList | 将 Cocos Creator 项目中 heroSet.ts 的 HeroInfo 全量同步到 CardSet.ts 的 CardPoolList。只要用户提到“根据 HeroInfo 自动补全/同步 CardPoolList”“按 cards_lv 映射 CardPoolList.lv”“按 HeroInfo.lv 映射 hero_lv”就应立即使用本技能执行批量转换与校验。 |
HeroInfo_to_CardPoolList
适用场景
当用户提出以下目标时使用本技能:
- 把
HeroInfo里的所有英雄补进CardPoolList - 保证卡池条目和英雄配置一一对应
- 批量同步等级映射关系,避免手动漏配
固定输入位置
- 英雄源:
assets/script/game/common/config/heroSet.ts - 卡池目标:
assets/script/game/common/config/CardSet.ts
固定映射规则
- 仅处理英雄条目(
CardType.Hero) CardPoolList.uuid = HeroInfo.uuidCardPoolList.lv = HeroInfo.cards_lvCardPoolList.hero_lv = HeroInfo.lv- 英雄条目按
CardPoolList.lv升序排序(同级按uuid升序) - 未指定时,英雄卡默认使用:
type: CardType.Herocost: 3weight: 25
执行流程
- 读取
heroSet.ts,定位export const HeroInfo对象。 - 解析所有英雄项(按实际对象内容为准,不依赖号段硬编码)。
- 提取每个英雄的
uuid、cards_lv、lv。 - 读取
CardSet.ts中CardPoolList。 - 仅对
type: CardType.Hero条目做“新增或更新”:- 已存在同
uuid:更新lv与hero_lv - 不存在同
uuid:按默认字段新增
- 已存在同
- 对全部英雄卡条目按
lv升序重排(同级按uuid升序)。 - 非英雄卡(如
Special/Skill/Buff/Debuff)保持原样和原顺序。 - 输出结果后做一致性校验:
HeroInfo英雄数量 ==CardPoolList英雄数量- 每个英雄
uuid都能在CardPoolList找到 - 每个条目都满足
lv=cards_lv且hero_lv=HeroInfo.lv - 英雄条目顺序满足
lv升序
输出要求
- 优先直接修改
CardSet.ts,不新建额外文档文件。 - 最终反馈必须包含:
- 新增了多少英雄条目
- 更新了多少已有英雄条目
- 是否存在无法映射的异常条目
失败处理
出现以下情况必须停止并明确报错:
HeroInfo结构不存在或语法异常- 英雄缺失
uuid/cards_lv/lv任一关键字段 CardPoolList结构不存在
质量门槛
- 不改动与本任务无关的字段
- 不改变非英雄卡逻辑
- 修改后需确认 TypeScript 诊断无新增错误