diff --git a/assets/resources/gui/element/hnode.prefab b/assets/resources/gui/element/hnode.prefab index 3186a33a..11097109 100644 --- a/assets/resources/gui/element/hnode.prefab +++ b/assets/resources/gui/element/hnode.prefab @@ -8369,7 +8369,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": 22.662, + "x": 30.129, "y": 0, "z": 0 }, @@ -8666,7 +8666,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": -120, + "x": -121, "y": 0, "z": 0 }, @@ -8719,7 +8719,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": 75, + "x": 82.5, "y": 0, "z": 0 }, @@ -8760,7 +8760,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 300, + "width": 330, "height": 70 }, "_anchorPoint": { @@ -8894,7 +8894,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": 12.329, + "x": 16.733, "y": 0, "z": 0 }, @@ -9030,7 +9030,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": 22.662, + "x": 27.066, "y": 0, "z": 0 }, @@ -9189,7 +9189,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": 67.099, + "x": 71.503, "y": 0, "z": 0 }, @@ -9339,7 +9339,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 150, + "width": 165, "height": 30 }, "_anchorPoint": { @@ -9486,7 +9486,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": 40, + "x": 53, "y": 0, "z": 0 }, @@ -9539,7 +9539,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": 75, + "x": 82.5, "y": 0, "z": 0 }, @@ -9580,7 +9580,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 300, + "width": 330, "height": 70 }, "_anchorPoint": { @@ -9714,7 +9714,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": 12.329, + "x": 16.733, "y": 0, "z": 0 }, @@ -9850,7 +9850,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": 22.662, + "x": 27.066, "y": 0, "z": 0 }, @@ -10009,7 +10009,7 @@ }, "_lpos": { "__type__": "cc.Vec3", - "x": 71.539, + "x": 75.943, "y": 0, "z": 0 }, @@ -10159,7 +10159,7 @@ }, "_contentSize": { "__type__": "cc.Size", - "width": 150, + "width": 165, "height": 30 }, "_anchorPoint": { @@ -10355,7 +10355,7 @@ "_paddingRight": 0, "_paddingTop": 0, "_paddingBottom": 0, - "_spacingX": 10, + "_spacingX": 9, "_spacingY": 0, "_verticalDirection": 1, "_horizontalDirection": 0, diff --git a/assets/script/game/map/HInfoComp.ts b/assets/script/game/map/HInfoComp.ts index d75c616e..b8871c3c 100644 --- a/assets/script/game/map/HInfoComp.ts +++ b/assets/script/game/map/HInfoComp.ts @@ -104,6 +104,8 @@ export class HInfoComp extends CCComp { private hpLabel: Label | null = null; /** HP 加成标签缓存引用 */ private hpPlusLabel: Label | null = null; + /** CD 标签缓存引用 */ + private cdLabel: Label | null = null; /** 图标视觉令牌(异步加载竞态保护) */ private iconVisualToken: number = 0; /** 当前显示的英雄 UUID(避免相同 UUID 重复加载动画) */ @@ -184,6 +186,12 @@ export class HInfoComp extends CCComp { if (this.infoLabel) { this.infoLabel.string = buildSkillDesc(hero); } + + if (this.cdLabel) { + const skillKeys = hero.skills ? Object.keys(hero.skills) : []; + const displaySkill = skillKeys.length > 1 ? hero.skills[skillKeys[1]] : (skillKeys.length > 0 ? hero.skills[skillKeys[0]] : null); + this.cdLabel.string = displaySkill?.cd ? `${displaySkill.cd.toFixed(1)}s` : "0s"; + } } /** 是否正在关闭中,防止重复调用 remove */ @@ -317,6 +325,17 @@ export class HInfoComp extends CCComp { } } } + + if (this.cdLabel) { + const skillIds = this.model.getSkillIds(); + const displaySkillId = skillIds[1] ?? skillIds[0] ?? 0; + if (displaySkillId) { + const effectiveCd = this.model.getEffectiveSkillCd(displaySkillId); + this.cdLabel.string = effectiveCd > 0 ? `${effectiveCd.toFixed(1)}s` : "0s"; + } else { + this.cdLabel.string = "0s"; + } + } } /** @@ -354,6 +373,9 @@ export class HInfoComp extends CCComp { this.hpLabel = this.hp_node.getChildByName("val")?.getComponent(Label) || null; this.hpPlusLabel = this.hp_node.getChildByName("plus")?.getComponent(Label) || null; } + if (!this.cdLabel && this.cd_node) { + this.cdLabel = this.cd_node.getChildByName("val")?.getComponent(Label) || null; + } } /** diff --git a/assets/script/game/map/MissionHeroComp.ts b/assets/script/game/map/MissionHeroComp.ts index 2aa4c1e6..7db6c7dc 100644 --- a/assets/script/game/map/MissionHeroComp.ts +++ b/assets/script/game/map/MissionHeroComp.ts @@ -55,10 +55,10 @@ export class MissionHeroComp extends CCComp { /** 硬编码的6个英雄占位点 */ public static readonly HERO_POSITIONS: Vec3[] = [ - v3(-185, BoxSet.GAME_LINE + 90, 0), // index 0 (node_index 1): Top Front + v3(-200, BoxSet.GAME_LINE + 90, 0), // index 0 (node_index 1): Top Front v3(-170, BoxSet.GAME_LINE, 0), // index 1 (node_index 2): Mid Front v3(-200, BoxSet.GAME_LINE - 90, 0), // index 2 (node_index 3): Bot Front - v3(-285, BoxSet.GAME_LINE + 90, 0), // index 3 (node_index 4): Top Back + v3(-300, BoxSet.GAME_LINE + 90, 0), // index 3 (node_index 4): Top Back v3(-270, BoxSet.GAME_LINE, 0), // index 4 (node_index 5): Mid Back v3(-300, BoxSet.GAME_LINE - 90, 0), // index 5 (node_index 6): Bot Back ];