diff --git a/assets/resources/gui/element/cardlite.prefab b/assets/resources/gui/element/cardlite.prefab index e91fe176..2217528b 100644 --- a/assets/resources/gui/element/cardlite.prefab +++ b/assets/resources/gui/element/cardlite.prefab @@ -3453,12 +3453,7 @@ "BG_node": { "__id__": 2 }, - "pool_lv_node": { - "__id__": 172 - }, - "lvl_node": { - "__id__": 187 - }, + "lvl_node": null, "_id": "" }, { diff --git a/assets/script/game/common/config/CardSet.ts b/assets/script/game/common/config/CardSet.ts index e8475d0a..9d0d6046 100644 --- a/assets/script/game/common/config/CardSet.ts +++ b/assets/script/game/common/config/CardSet.ts @@ -53,6 +53,7 @@ export interface CardConfig { pool_lv: CardLV hero_lv?: number card_lv?:number + base_pool_lv?: number // 技能卡扩展属性 name?: string // 卡牌名称 @@ -116,7 +117,8 @@ HeroList.forEach(uuid => { weight: baseWeight, pool_lv: pLv as CardLV, kind: CKind.Hero, - hero_lv: targetHeroLv + hero_lv: targetHeroLv, + base_pool_lv: basePoolLv }); } }); diff --git a/assets/script/game/hero/Hero.ts b/assets/script/game/hero/Hero.ts index 1aab45eb..94fc9f85 100644 --- a/assets/script/game/hero/Hero.ts +++ b/assets/script/game/hero/Hero.ts @@ -111,6 +111,7 @@ export class Hero extends ecs.Entity { model.hero_name = hero.name; model.lv = hero_lv; model.pool_lv = pool_lv; + model.base_pool_lv = hero.pool_lv ?? 1; model.type = hero.type; model.fac = FacSet.HERO; model.dis = hero.dis ?? 720; diff --git a/assets/script/game/hero/HeroAttrsComp.ts b/assets/script/game/hero/HeroAttrsComp.ts index f91019f7..b859db70 100644 --- a/assets/script/game/hero/HeroAttrsComp.ts +++ b/assets/script/game/hero/HeroAttrsComp.ts @@ -20,6 +20,7 @@ export class HeroAttrsComp extends ecs.Comp { hero_name: string = "hero"; lv: number = 1; pool_lv: number = 1; + base_pool_lv: number = 1; type: number = 0; // 0近战 1远程 2辅助 fac: number = 0; // 0:hero 1:monster // ==================== 基础属性(有初始值) ==================== diff --git a/assets/script/game/map/CardComp.ts b/assets/script/game/map/CardComp.ts index 6c26b3d6..40dc53e9 100644 --- a/assets/script/game/map/CardComp.ts +++ b/assets/script/game/map/CardComp.ts @@ -548,7 +548,7 @@ export class CardComp extends CCComp { this.isLongPressed = true; const heroUuid = this.card_uuid; const heroLv = Math.max(1, this.cardData.hero_lv ?? 1); - const poolLv = Math.max(1, this.cardData.pool_lv ?? 1); + const poolLv = Math.max(1, this.cardData.base_pool_lv ?? this.cardData.pool_lv ?? 1); oops.gui.remove(UIID.HInfo); oops.gui.open(UIID.HInfo, { heroUuid, heroLv, poolLv }); } @@ -607,10 +607,11 @@ export class CardComp extends CCComp { const kindName = CKind[this.cardData.kind]; if (this.BG_node) { + const bgLv = this.cardData.base_pool_lv ?? this.cardData.pool_lv; this.BG_node.children.forEach(child => { child.active = (child.name === kindName); const bg = child.getComponent(CardBgComp); - if (bg) child.active ? bg.apply(this.cardData.pool_lv) : bg.clear(); + if (bg) child.active ? bg.apply(bgLv) : bg.clear(); }); } diff --git a/assets/script/game/map/CardLiteComp.ts b/assets/script/game/map/CardLiteComp.ts index 237ddb33..76dde728 100644 --- a/assets/script/game/map/CardLiteComp.ts +++ b/assets/script/game/map/CardLiteComp.ts @@ -220,10 +220,11 @@ export class CardLiteComp extends CCComp { const kindName = CKind[this.cardData.kind]; if (this.BG_node) { + const bgLv = this.cardData.base_pool_lv ?? this.cardData.pool_lv; this.BG_node.children.forEach(child => { child.active = (child.name === kindName); const bg = child.getComponent(CardBgComp); - if (bg) child.active ? bg.apply(this.cardData.pool_lv) : bg.clear(); + if (bg) child.active ? bg.apply(bgLv) : bg.clear(); }); } diff --git a/assets/script/game/map/HInfoComp.ts b/assets/script/game/map/HInfoComp.ts index 0a803b3e..745fad2c 100644 --- a/assets/script/game/map/HInfoComp.ts +++ b/assets/script/game/map/HInfoComp.ts @@ -275,7 +275,7 @@ export class HInfoComp extends CCComp { this.BG_node.children.forEach(child => { child.active = (child.name === kindName); const bg = child.getComponent(CardBgComp); - if (bg) child.active ? bg.apply(this.model.pool_lv ?? 1) : bg.clear(); + if (bg) child.active ? bg.apply(this.model.base_pool_lv ?? this.model.pool_lv ?? 1) : bg.clear(); }); } diff --git a/assets/script/game/map/VictoryComp.ts b/assets/script/game/map/VictoryComp.ts index ca86de80..e048573b 100644 --- a/assets/script/game/map/VictoryComp.ts +++ b/assets/script/game/map/VictoryComp.ts @@ -189,7 +189,7 @@ export class VictoryComp extends CCComp { if (hbNode) hbNode.active = false; // ---- 卡牌等级标识 ---- - const cardLvStr = `lv${mvp.pool_lv || 1}`; + const cardLvStr = `lv${mvp.base_pool_lv || mvp.pool_lv || 1}`; if (lv_node) { lv_node.children.forEach(child => { if (child.name === "light") {