From 107e7fde96d8b7e8a7127634330fc5002c12ed28 Mon Sep 17 00:00:00 2001 From: panFD Date: Sat, 20 Jun 2026 12:42:45 +0800 Subject: [PATCH] =?UTF-8?q?fix(map):=20=E4=BF=AE=E5=A4=8D=E5=8D=A1?= =?UTF-8?q?=E7=89=8C=E6=8F=8F=E8=BF=B0=E9=80=BB=E8=BE=91=E7=9A=84=E4=BC=98?= =?UTF-8?q?=E5=85=88=E7=BA=A7=E9=A1=BA=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 调整卡牌描述的获取逻辑,先处理驻场技能卡的描述获取,再 fallback 到其他配置来源,修正原有的优先级混乱问题 --- assets/script/game/map/HInfoComp.ts | 2 +- assets/script/game/map/SCardComp.ts | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/assets/script/game/map/HInfoComp.ts b/assets/script/game/map/HInfoComp.ts index 12452162..7af5f0fc 100644 --- a/assets/script/game/map/HInfoComp.ts +++ b/assets/script/game/map/HInfoComp.ts @@ -26,7 +26,7 @@ import { HeroInfo } from "../common/config/heroSet"; import { HeroAttrsComp } from "../hero/HeroAttrsComp"; import { smc } from "../common/SingletonModuleComp"; import { Hero } from "../hero/Hero"; -import { FieldSkillType } from "../common/config/SkillSet"; +import { FieldSkillType, FieldSkillSet } from "../common/config/SkillSet"; import { buildSkillDesc } from "../common/config/HeroSkillDesc"; import { GameEvent } from "../common/config/GameEvent"; import { oops } from "db://oops-framework/core/Oops"; diff --git a/assets/script/game/map/SCardComp.ts b/assets/script/game/map/SCardComp.ts index 34a91ea4..7ba7850f 100644 --- a/assets/script/game/map/SCardComp.ts +++ b/assets/script/game/map/SCardComp.ts @@ -260,11 +260,14 @@ export class SCardComp extends CCComp { if (this.info_node) { this.info_node.active = true; - // 描述优先级:卡牌显式配置 > 关联技能 > 驻场技能 > 卡牌数据兜底 - let desc = skillCard?.info || skill?.info || this.cardData?.info || ""; - if (!desc && this.cardData.field && this.cardData.field.length > 0) { + // 驻场技能卡描述取 FieldSkillSet;其他卡牌取卡牌/技能配置 + let desc = ""; + if (this.cardData.field && this.cardData.field.length > 0) { desc = FieldSkillSet[this.cardData.field[0]]?.info || ""; } + if (!desc) { + desc = skillCard?.info || skill?.info || this.cardData?.info || ""; + } // 与 HlistComp 保持一致:优先查找名为 "info" 的子节点上的 Label const infoLabel = this.info_node.getChildByName("info")?.getComponent(Label) || this.info_node.getComponent(Label)