feat(map): 新增英雄图鉴技能分档描述渲染逻辑

1. 为技能图标组件新增所属英雄UUID字段,传递英雄上下文
2. 在英雄列表面板中为技能图标绑定所属英雄ID
3. 新增英雄技能分档渲染逻辑,根据英雄等级展示对应技能解锁状态和描述
4. 补充注释和类型定义,完善代码文档
This commit is contained in:
pan
2026-08-27 21:10:39 +08:00
parent 39cbb2eed4
commit 423653c4c8
3 changed files with 73 additions and 7 deletions

View File

@@ -42,6 +42,8 @@ export class SSkillBoxComp extends CCComp {
/** 技能 UUID */
private s_uuid: number = 0;
/** 所属英雄 UUID(英雄图鉴模式,>0 时点击弹窗走英雄技能分档描述) */
private hero_uuid: number = 0;
/** 卡牌等级 */
private card_lv: number = 1;
/** 卡牌自定义图标ID(优先级最高,未定义则按 trigger_type 自动取) */
@@ -77,6 +79,8 @@ export class SSkillBoxComp extends CCComp {
skill_name: this.resolveSkillName(),
field: this.field,
trigger_type: this.trigger_type,
// 英雄图鉴模式:携带所属英雄,弹窗按英雄技能分档描述渲染
hero_uuid: this.hero_uuid || undefined,
});
}
@@ -120,13 +124,15 @@ export class SSkillBoxComp extends CCComp {
/**
* 初始化英雄技能图标(英雄图鉴面板专用):
* 图标按 s_uuid 直接取 SkillSet / FieldSkillSet 配置,不走 EquipPoolList。
* @param s_uuid 技能 UUID(大招/触发技能指向 SkillSet,光环词条指向 FieldSkillSet)
* @param s_lv 当前英雄等级下生效的技能等级(显示在等级标签)
* @param locked 当前等级未激活时显示锁定遮罩
* @param isField true 时图标取 FieldSkillSet(驻场光环词条)
* @param s_uuid 技能 UUID(大招/触发技能指向 SkillSet,光环词条指向 FieldSkillSet)
* @param s_lv 当前英雄等级下生效的技能等级(显示在等级标签)
* @param locked 当前等级未激活时显示锁定遮罩
* @param isField true 时图标取 FieldSkillSet(驻场光环词条)
* @param heroUuid 所属英雄 UUID(点击弹窗按英雄技能分档描述渲染)
*/
initHeroSkill(s_uuid: number, s_lv: number, locked: boolean, isField: boolean = false) {
initHeroSkill(s_uuid: number, s_lv: number, locked: boolean, isField: boolean = false, heroUuid: number = 0) {
this.s_uuid = s_uuid;
this.hero_uuid = heroUuid;
this.card_lv = s_lv;
this.hero_icon_source = isField ? "field" : "skill";
this.updateUI();