Files
heros/assets/script/game/map/CardController.ts

94 lines
4.0 KiB
TypeScript

import { _decorator,Button,EventHandler,EventTouch,Label,NodeEventType,resources,Sprite,SpriteAtlas,tween,UITransform,v3 } 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 { smc } from "../common/SingletonModuleComp";
import { oops } from "../../../../extensions/oops-plugin-framework/assets/core/Oops";
import { RandomManager } from "../../../../extensions/oops-plugin-framework/assets/core/common/random/RandomManager";
import { SkillSet } from "../common/config/SkillSet";
import { HeroModelComp } from "../hero/HeroModelComp";
import { GameSet } from "../common/config/BoxSet";
import { GameMap } from "./GameMap";
import { MapModelComp } from "./model/MapModelComp";
import { Talent } from "../Role/Talent";
import { Talents } from "../common/config/TalentSet";
import { HeroViewComp } from "../hero/HeroViewComp";
import { Position } from "../../../../extensions/oops-plugin-framework/assets/libs/gui/badge/Badge";
import { MissionHomeComp } from "./MissionHomeComp";
const { ccclass, property } = _decorator;
/** 视图层对象 */
@ccclass('CardControllerComp')
@ecs.register('CardController', false)
export class CardControllerComp extends CCComp {
touch_time:number = 0
in_touch:boolean = false
bbg:any=null
bbg_y:number=60
bbg_x:any=[-300,-150,0,150,300]
protected onLoad(): void {
this.bbg=this.node.getChildByName("bar").getChildByName("bbg")
}
start() {
this.bbg=this.node.getChildByName("bar").getChildByName("bbg")
this.bbg.setPosition(v3(this.bbg_x[2],this.bbg_y))
this.page_init()
}
show_info(uuid:number,type:number){
console.log("show_info",uuid)
}
protected update(dt: number): void {
if(smc.vmdata.game_over||smc.vmdata.game_pause){
return
}
}
page_init(){
this.node.getChildByName("mission_home").active=true;
this.node.getChildByName("hero_home").active = false;
this.node.getChildByName("shop_home").active = false;
this.node.getChildByName("battle_home").active = false;
this.node.getChildByName("luck_home").active = false;
this.node.getChildByName("mission").active = false;
}
bar_change(e:any,args:any){
console.log("bar_change",args)
this.node.getChildByName("bar").active=true;
this.node.getChildByName("mission").active = false;
this.node.getChildByName("hero_home").active = false
this.node.getChildByName("mission_home").active = false
this.node.getChildByName("shop_home").active = false
this.node.getChildByName("battle_home").active = false
this.node.getChildByName("luck_home").active = false
switch(args){
case "hero":
this.node.getChildByName("hero_home").active = true
this.bbg.setPosition(v3(this.bbg_x[1],this.bbg_y))
break;
case "shop":
this.node.getChildByName("shop_home").active = true
this.bbg.setPosition(v3(this.bbg_x[0],this.bbg_y))
break;
// case "battle":
// this.node.getChildByName("battle_home").active = true
// this.bbg.setPosition(v3(this.bbg_x[4],this.bbg_y))
break;
case "luck":
this.node.getChildByName("luck_home").active = true
this.bbg.setPosition(v3(this.bbg_x[3],this.bbg_y))
break;
case "home":
this.node.getChildByName("mission_home").active = true
this.bbg.setPosition(v3(this.bbg_x[2],this.bbg_y))
this.node.getChildByName("mission_home").getComponent(MissionHomeComp).update_hero_cards()
break;
}
}
/** 视图对象通过 ecs.Entity.remove(ControllerComp) 删除组件是触发组件处理自定义释放逻辑 */
reset() {
this.node.destroy();
}
}