重构(地图卡牌): 抽离技能卡牌逻辑为独立组件
- 新增SCardComp.ts,实现技能卡牌专属的UI渲染、点击交互与使用逻辑 - 更新MissionCardComp.ts,替换技能卡槽的组件类型为SCardComp并修正相关代码 - 重构CardComp.ts:移除所有Skill类型卡牌的处理代码,修复卡牌等级取值优先级问题,简化拖拽逻辑仅保留英雄卡上划使用功能
This commit is contained in:
@@ -39,6 +39,7 @@ import { CCComp } from "../../../../extensions/oops-plugin-framework/assets/modu
|
||||
import { GameEvent } from "../common/config/GameEvent";
|
||||
import { CARD_POOL_INIT_LEVEL, CARD_POOL_MAX_LEVEL, CARD_POOL_UPGRADE_DISCOUNT_PER_WAVE, CardConfig, CardType, CardsUpSet, drawCardsByRule, getCardsByLv, SpecialRefreshCardList, SpecialRefreshHeroType, SpecialUpgradeCardList } from "../common/config/CardSet";
|
||||
import { CardComp } from "./CardComp";
|
||||
import { SCardComp } from "./SCardComp";
|
||||
import { oops } from "db://oops-framework/core/Oops";
|
||||
import { HeroAttrsComp } from "../hero/HeroAttrsComp";
|
||||
import { smc } from "../common/SingletonModuleComp";
|
||||
@@ -138,7 +139,7 @@ export class MissionCardComp extends CCComp {
|
||||
/** 四个槽位对应的 CardComp 控制器缓存(有序数组) */
|
||||
private cardComps: CardComp[] = [];
|
||||
/** 技能卡槽控制器缓存 */
|
||||
private skillCardComps: CardComp[] = [];
|
||||
private skillCardComps: SCardComp[] = [];
|
||||
/** 当前卡池等级(仅影响抽卡来源,不直接改卡槽现有内容) */
|
||||
private poolLv: number = CARD_POOL_INIT_LEVEL;
|
||||
/** 是否已缓存卡牌面板基准缩放 */
|
||||
@@ -671,8 +672,8 @@ export class MissionCardComp extends CCComp {
|
||||
|
||||
const skillNodes = [this.skill_card1, this.skill_card2, this.skill_card3];
|
||||
this.skillCardComps = skillNodes
|
||||
.map(node => node?.getComponent(CardComp))
|
||||
.filter((comp): comp is CardComp => !!comp);
|
||||
.map(node => node?.getComponent(SCardComp))
|
||||
.filter((comp): comp is SCardComp => !!comp);
|
||||
}
|
||||
|
||||
// ======================== 核心业务:抽卡 & 升级 ========================
|
||||
|
||||
Reference in New Issue
Block a user