/** */ import { mLogger } from "../common/Logger"; import { _decorator, Animation, AnimationClip, EventTouch, Label, Node, NodeEventType, Sprite, SpriteAtlas, Tween, tween, UIOpacity, Vec3, resources, Light, UITransform, Widget } from "cc"; import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS"; import { CCComp } from "../../../../extensions/oops-plugin-framework/assets/module/common/CCComp"; import { CardConfig, CardType, SpecialRefreshCardList, SpecialUpgradeCardList, CKind, CardPoolList } from "../common/config/CardSet"; import { HeroInfo } from "../common/config/heroSet"; import { SkillSet } from "../common/config/SkillSet"; import { GameEvent } from "../common/config/GameEvent"; import { oops } from "db://oops-framework/core/Oops"; import { smc } from "../common/SingletonModuleComp"; import { UIID } from "../common/config/GameUIConfig"; import { HeroAttrsComp } from "../hero/HeroAttrsComp"; import { TalentType } from "../common/config/TalentSet"; import { getLvColor } from "../common/config/GameSet"; import { MissionEconomy } from "./MissionEconomy"; const { ccclass, property } = _decorator; /** * CardLiteComp —— 单张卡牌简单视图组件 * */ @ccclass('CardLiteComp') @ecs.register('CardLiteComp', false) export class CardLiteComp extends CCComp { /** 是否开启调试日志 */ private debugMode: boolean = true; // ======================== 编辑器绑定节点 ======================== /** 锁定态图标节点(显示时表示本槽位锁定) */ @property(Node) name_node=null! /** 卡牌图标节点(英雄动画 / 技能图标) */ @property(Node) icon_node=null! /** 费用显示节点 */ @property(Node) cost_node=null! /** 卡牌种类标识节点(如近战 / 远程 / 辅助等分类子节点的容器) */ @property(Node) Ckind_node=null! /** 卡牌背景底框节点(按卡池等级切换子节点显示) */ @property(Node) BG_node=null! @property(Node) pool_lv_node=null! //英雄对应的卡池等级 @property(Label) lvl_node: Label = null! //英雄本身的等级 // ======================== 运行时状态 ======================== /** 当前卡牌的金币费用 */ card_cost:number=0 /** 当前卡牌类型(英雄 / 技能 / 特殊升级 / 特殊刷新) */ card_type:CardType=CardType.Hero /** 当前卡牌的唯一标识 UUID */ card_uuid:number=0 private cardData: CardConfig | null = null; /** ECS 组件移除时的释放钩子:销毁节点 */ reset() { this.node.destroy(); } }