1. 新增CardLiteComp卡牌组件、HerosListComp英雄列表组件 2. 新增cardlite预制体及其元配置 3. 重构HlistComp移除旧的英雄图标节点与切换按钮逻辑
85 lines
2.3 KiB
TypeScript
85 lines
2.3 KiB
TypeScript
/**
|
||
* @file HerosListComp.ts
|
||
* @description 英雄图鉴弹出页面(UI 视图层)
|
||
*
|
||
*/
|
||
import { _decorator, Animation, AnimationClip, Button, Event, Label, Node, NodeEventType, Sprite, resources, tween, Vec3, Widget, Prefab } 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 { HeroInfo, HeroList } from "../common/config/heroSet";
|
||
import { IType, SkillSet } from "../common/config/SkillSet";
|
||
import { oops } from "db://oops-framework/core/Oops";
|
||
import { mLogger } from "../common/Logger";
|
||
import { UIID } from "../common/config/GameUIConfig";
|
||
|
||
const {property, ccclass } = _decorator;
|
||
|
||
/**
|
||
* HerosListComp —— 英雄图鉴轮播视图组件
|
||
*
|
||
* 在任务主页展示所有可用英雄,玩家可点击切换当前选中英雄的名称、AP、HP、CD、技能信息
|
||
*/
|
||
@ccclass('HerosListComp')
|
||
@ecs.register('HerosListComp', false)
|
||
export class HerosListComp extends CCComp {
|
||
// ======================== 编辑器绑定节点 ========================
|
||
|
||
/** 当前英雄 idle 图标节点 */
|
||
@property(Node)
|
||
hero_icon=null!
|
||
|
||
/** 攻击力标签节点 */
|
||
@property(Node)
|
||
ap_node=null!
|
||
/** 生命值标签节点 */
|
||
@property(Node)
|
||
hp_node=null!
|
||
/** 冷却时间标签节点 */
|
||
@property(Node)
|
||
cd_node=null!
|
||
/** 技能信息容器节点(包含 Line1~Line5 子节点) */
|
||
@property(Node)
|
||
info_node=null!
|
||
/** 英雄名称标签节点 */
|
||
@property(Node)
|
||
name_node=null!
|
||
|
||
/** 英雄图鉴卡容器节点 */
|
||
@property(Node)
|
||
cards_node=null!
|
||
|
||
/** 英雄图鉴卡预制体 */
|
||
@property(Prefab)
|
||
card_lite_prefab=null!
|
||
|
||
|
||
// ======================== 运行时状态 ========================
|
||
|
||
/** 当前选中英雄在 HeroList 中的索引 */
|
||
huuid:number=null!
|
||
/** 当前选中英雄在 HeroList 数组中的下标 */
|
||
/** 调试日志开关 */
|
||
debugMode: boolean = false;
|
||
|
||
onLoad() {
|
||
|
||
}
|
||
/** 预留:弹窗打开时接收参数 */
|
||
onAdded(args: any) {
|
||
|
||
}
|
||
/** 关闭英雄图鉴弹窗 */
|
||
closeHeros(){
|
||
oops.gui.remove(UIID.Heros)
|
||
}
|
||
start() {
|
||
|
||
|
||
}
|
||
|
||
/** ECS 组件移除时销毁节点 */
|
||
reset() {
|
||
this.node.destroy();
|
||
}
|
||
}
|