去除 英雄升级相关

This commit is contained in:
2025-03-18 10:21:57 +08:00
parent b0d35b6ff5
commit 82d80a7537
20 changed files with 1374 additions and 3667 deletions

View File

@@ -1,43 +0,0 @@
import { instantiate, Label, Prefab, resources, Sprite, SpriteAtlas } from "cc";
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
import { oops } from "../../../../extensions/oops-plugin-framework/assets/core/Oops";
import { HeroCardComp } from "./HeroCardComp";
import { smc } from "../common/SingletonModuleComp";
import { HeroInfo } from "../common/config/heroSet";
/** HeroCard 模块 */
@ecs.register(`HeroCard`)
export class HeroCard extends ecs.Entity {
protected init() {
// this.addComponents<ecs.Comp>();
}
load(uuid:number=101,parent:any) {
// var path = "game/monster/"+prefab_path;
var path = "game/gui/hero_card";
var prefab: Prefab = oops.res.get(path, Prefab)!;
var node = instantiate(prefab);
// let slv = node.getChildByName("slv");
node.parent = parent;
var icon_path = "game/heros/herois"
node.getChildByName("name").getComponent(Label).string = HeroInfo[uuid].name
resources.load(icon_path, SpriteAtlas, (err: any, atlas) => {
const sprite = node.getChildByName("Mask").getChildByName("hero").getComponent(Sprite);
sprite.spriteFrame = atlas.getSpriteFrame(HeroInfo[uuid].path);
});
// var path = "game/heros/uiheros/"+HeroInfo[uuid].path;
// var prefab: Prefab = oops.res.get(path, Prefab)!;
// var snode = instantiate(prefab);
// snode.parent = node.getChildByName("Mask")
let hcc = node.getComponent(HeroCardComp)!;
hcc.h_uuid = uuid;
hcc.update_data();
this.add(hcc);
}
/** 模块资源释放 */
destroy() {
// 注: 自定义释放逻辑,视图层实现 ecs.IComp 接口的 ecs 组件需要手动释放
super.destroy();
}
}

View File

@@ -1,9 +0,0 @@
{
"ver": "4.0.23",
"importer": "typescript",
"imported": true,
"uuid": "d7e27567-5e31-483e-bd8e-c4efd272660c",
"files": [],
"subMetas": {},
"userData": {}
}

View File

@@ -1,78 +0,0 @@
import { _decorator, Color, instantiate, Label, Prefab, ProgressBar, Sprite } 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 { HeroHomeComp } from "../map/HeroHomeComp";
import { oops } from "../../../../extensions/oops-plugin-framework/assets/core/Oops";
import { smc } from "../common/SingletonModuleComp";
import { HeroInfo } from "../common/config/heroSet";
import { ColorSet } from "../common/config/BoxSet";
import { getUpChipByLv, SlvUp } from "../common/config/RoleSet";
const { ccclass, property } = _decorator;
/** 视图层对象 */
@ccclass('HeroCardComp')
@ecs.register('HeroCardComp', false)
export class HeroCardComp extends CCComp {
hcc_home: HeroHomeComp = null!;
h_uuid: number = 0;
onLoad() {
oops.message.on("hero_card_show_info", this.check_show, this);
oops.message.on("hero_card_update_info", this.update_data, this);
}
/** 视图层逻辑代码分离演示 */
start() {
this.hcc_home=this.node.parent.parent.parent.parent.getComponent(HeroHomeComp);
// console.log("hero_card hcc_home",this.hcc_home)
}
show_info(){
this.hcc_home.hero_show(this.h_uuid)
oops.message.dispatchEvent("hero_card_show_info",{uuid:this.h_uuid})
}
check_show(event: string, args: any){
// console.log("hero_card check_show",args)
this.show_bg(false)
if(args.uuid==this.h_uuid){
this.show_bg(true)
}
}
show_bg(val:boolean){
// this.node.getChildByName("show").active=val
}
update_data(){
let slv = this.node.getChildByName("slv")
this.node.getChildByName("lv").getComponent(Label).string=smc.heros[this.h_uuid].lv.toString()+"级"
// if(smc.heros[this.h_uuid].slv==0){
// this.node.getChildByName("lock").active=true
// slv.active=false
// }else{
// slv.active=true
// this.node.getChildByName("lock").active=false
// slv.getChildByName("slv").getComponent(Label).string=smc.heros[this.h_uuid].slv.toString()
// }
let lvneed=(getUpChipByLv(smc.heros[this.h_uuid].lv)-HeroInfo[this.h_uuid].lvexp)*smc.heros[this.h_uuid].lv
let lvnum=smc.heros[this.h_uuid].num
this.node.getChildByName("up").active=lvnum>=lvneed
this.node.getChildByName("need").getComponent(Label).string = lvneed.toString()
this.node.getChildByName("num").getComponent(Label).string = lvnum.toString()
this.node.getChildByName("bar").getComponent(ProgressBar).progress = lvnum/lvneed
this.node.getChildByName("g1").active=HeroInfo[this.h_uuid].quality==1
this.node.getChildByName("g2").active=HeroInfo[this.h_uuid].quality==2
this.node.getChildByName("g3").active=HeroInfo[this.h_uuid].quality==3
}
call_hero(uuid:number){
var path = "game/heros/uiheros/"+HeroInfo[uuid].path;
var prefab: Prefab = oops.res.get(path, Prefab)!;
var node = instantiate(prefab);
node.parent = this.node.getChildByName("Mask")
}
clear_hero(){
this.node.getChildByName("Mask").destroyAllChildren()
}
/** 视图对象通过 ecs.Entity.remove(ModuleViewComp) 删除组件是触发组件处理自定义释放逻辑 */
reset() {
this.node.destroy();
}
}

View File

@@ -1,9 +0,0 @@
{
"ver": "4.0.23",
"importer": "typescript",
"imported": true,
"uuid": "e50aeebc-0c92-4f72-ab68-4979e639c193",
"files": [],
"subMetas": {},
"userData": {}
}

View File

@@ -1,44 +0,0 @@
import { instantiate, Label, Prefab, resources, Sprite, SpriteAtlas } from "cc";
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
import { oops } from "../../../../extensions/oops-plugin-framework/assets/core/Oops";
import { HeroSelectComp } from "./HeroSelectComp";
import { smc } from "../common/SingletonModuleComp";
import { HeroInfo } from "../common/config/heroSet";
/** HeroSelect 模块 */
@ecs.register(`HeroSelect`)
export class HeroSelect extends ecs.Entity {
protected init() {
// this.addComponents<ecs.Comp>();
}
load(uuid:number=101,parent:any) {
// var path = "game/monster/"+prefab_path;
var path = "game/gui/hero_set";
var prefab: Prefab = oops.res.get(path, Prefab)!;
var node = instantiate(prefab);
// let slv = node.getChildByName("slv");
node.parent = parent;
var icon_path = "game/heros/herois"
node.getChildByName("name").getComponent(Label).string = HeroInfo[uuid].name
resources.load(icon_path, SpriteAtlas, (err: any, atlas) => {
const sprite = node.getChildByName("Mask").getChildByName("hero").getComponent(Sprite);
sprite.spriteFrame = atlas.getSpriteFrame(HeroInfo[uuid].path);
});
// var path = "game/heros/uiheros/"+HeroInfo[uuid].path;
// var prefab: Prefab = oops.res.get(path, Prefab)!;
// var snode = instantiate(prefab);
// snode.parent = node.getChildByName("Mask")
let hcc = node.getComponent(HeroSelectComp)!;
hcc.h_uuid = uuid;
hcc.update_data();
this.add(hcc);
}
/** 模块资源释放 */
destroy() {
// 注: 自定义释放逻辑,视图层实现 ecs.IComp 接口的 ecs 组件需要手动释放
super.destroy();
}
}

View File

@@ -1,9 +0,0 @@
{
"ver": "4.0.23",
"importer": "typescript",
"imported": true,
"uuid": "675a0ae2-9928-4084-80ac-1b35115e3959",
"files": [],
"subMetas": {},
"userData": {}
}

View File

@@ -1,78 +0,0 @@
import { _decorator, Color, Label, Sprite } 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 { oops } from "../../../../extensions/oops-plugin-framework/assets/core/Oops";
import { smc } from "../common/SingletonModuleComp";
import { ColorSet, GameSet } from "../common/config/BoxSet";
import { HeroInfo } from "../common/config/heroSet";
const { ccclass, property } = _decorator;
/** 视图层对象 */
@ccclass('HeroSelectComp')
@ecs.register('HeroSelectComp', false)
export class HeroSelectComp extends CCComp {
h_uuid: number = 0;
onLoad() {
oops.message.on("hero_set_select", this.check_show, this);
oops.message.on("hero_card_update_info", this.update_data, this);
}
/** 视图层逻辑代码分离演示 */
start() {
if(smc.fight_heros.indexOf(this.h_uuid)>=0){
this.show_bg(true)
}else{
this.show_bg(false)
}
}
select(){
if(smc.fight_heros.indexOf(this.h_uuid)>=0){
smc.fight_heros.splice(smc.fight_heros.indexOf(this.h_uuid),1)
this.show_bg(false)
oops.message.dispatchEvent("hero_card_cancel_select",{uuid:this.h_uuid})
return
}
if(smc.fight_heros.length>= GameSet.HERO_NUM){
oops.gui.toast(`英雄数量不能超过 ${GameSet.HERO_NUM}`);
return
}
smc.fight_heros.push(this.h_uuid)
oops.message.dispatchEvent("hero_card_select",{uuid:this.h_uuid})
this.show_bg(true)
}
check_show(event: string, args: any){
// console.log("hero_set check_show",args)
this.show_bg(false)
if(args.uuid==this.h_uuid){
this.show_bg(true)
}
}
show_bg(val:boolean){
this.node.getChildByName("show").active=val
}
update_data(){
// let slv = this.node.getChildByName("slv")
this.node.getChildByName("lv").getComponent(Label).string=smc.heros[this.h_uuid].lv.toString()+"级"
// if(smc.heros[this.h_uuid].slv==0){
// slv.active=false
// }else{
// slv.active=true
// slv.getChildByName("slv").getComponent(Label).string=smc.heros[this.h_uuid].slv.toString()
// }
this.node.getChildByName("g1").active=HeroInfo[this.h_uuid].quality==1
this.node.getChildByName("g2").active=HeroInfo[this.h_uuid].quality==2
this.node.getChildByName("g3").active=HeroInfo[this.h_uuid].quality==3
}
/** 全局消息逻辑处理 */
// private onHandler(event: string, args: any) {
// switch (event) {
// case ModuleEvent.Cmd:
// break;
// }
// }
/** 视图对象通过 ecs.Entity.remove(ModuleViewComp) 删除组件是触发组件处理自定义释放逻辑 */
reset() {
this.node.destroy();
}
}

View File

@@ -1,9 +0,0 @@
{
"ver": "4.0.23",
"importer": "typescript",
"imported": true,
"uuid": "e5696357-9e3c-44a0-b931-112175ad4315",
"files": [],
"subMetas": {},
"userData": {}
}