Files
heros/assets/script/game/common/SingletonModuleComp.ts
2024-12-17 10:12:36 +08:00

145 lines
4.4 KiB
TypeScript

/*
* @Author: dgflash
* @Date: 2021-11-18 14:20:46
* @LastEditors: dgflash
* @LastEditTime: 2022-08-04 15:46:16
*/
import { VM } from "../../../../extensions/oops-plugin-framework/assets/libs/model-view/ViewModel";
import { ecs } from "../../../../extensions/oops-plugin-framework/assets/libs/ecs/ECS";
import { Initialize } from "../initialize/Initialize";
import { GameMap } from "../map/GameMap";
import { BoxSet } from "./config/BoxSet";
import { v3 } from "cc";
import { Skill } from "../skills/Skill";
import { dead } from "../skills/oncend";
// import { Role } from "../role/Role";
// import { data } from "../data/data";
/** 游戏模块 */
@ecs.register('SingletonModule')
export class SingletonModuleComp extends ecs.Comp {
/** 游戏初始化模块 */
initialize: Initialize = null!;
/** 游戏地图 */
map: GameMap = null!;
cards: any = [
{uuid:9001,type:1},
];
item_list: any = [
{uuid:6005,type:2},{uuid:6006,type:2},{uuid:6101,type:2},{uuid:6102,type:2}, {uuid:6210,type:2},{uuid:6211,type:2},{uuid:6212,type:2},
// {uuid:6213,type:2},{uuid:6214,type:2},{uuid:6215,type:2},
// {uuid:6216,type:2},{uuid:6217,type:2},{uuid:6218,type:2}
];
mission:any={
play:false,
pause:false,
is_victory:false,
is_defeat:false,
is_battle:false,
lv:1,
victory:0,
mskill:1001,
mmskill:1002,
};
skills: any = {
1001:{lv:0,num:4,x1:0,x10:0},
1002:{lv:0,num:3,x1:0,x10:0},
1003:{lv:0,num:0,x1:0,x10:0},
1004:{lv:0,num:0,x1:0,x10:0},
1005:{lv:0,num:0,x1:0,x10:0},
1006:{lv:0,num:0,x1:0,x10:0},
1007:{lv:0,num:0,x1:0,x10:0},
1008:{lv:0,num:0,x1:0,x10:0},
1009:{lv:0,num:0,x1:0,x10:0},
};
/** 游戏主角 */
heros:any={
9001:{uuid:9001,lv:1,exp:0,slv:0,stone:0,num:100,x1:0,x10:0},
9002:{uuid:9002,lv:2,exp:0,slv:1,stone:0,num:80,x1:0,x10:0},
9003:{uuid:9003,lv:3,exp:0,slv:2,stone:0,num:90,x1:0,x10:0},
};
goods:any={
free: [ {uuid:9001,num:100000}, {uuid:1001,num:10}, {uuid:1002,num:10}, {uuid:1007,num:10},],
goods1:[ {uuid:1001,num:100}, {uuid:9002,num:1} ],
goods2:[ {uuid:1002,num:100}, {uuid:9002,num:1} ],
goods3:[ {uuid:1007,num:100}, {uuid:9002,num:1} ],
goods4:[ {uuid:9001,num:100}, {uuid:9002,num:1} ],
};
items:{
1001:{num:1000,x1:1,x10:0},
1002:{num:1000,x1:2,x10:0},
1003:{num:1000,x1:3,x10:0},
1004:{num:1000,x1:0,x10:0},
1005:{num:1000,x1:0,x10:0},
1006:{num:1000,x1:0,x10:0},
1007:{num:1000,x1:0,x10:0},
1008:{num:1000,x1:0,x10:0},
1009:{num:1000,x1:0,x10:0},
1010:{num:1000,x1:0,x10:0},
1011:{num:1000,x1:0,x10:0},
1012:{num:1000,x1:0,x10:0},
1013:{num:1000,x1:0,x10:0},
1014:{num:1000,x1:0,x10:0},
1015:{num:1000,x1:0,x10:0},
1016:{num:1000,x1:0,x10:0},
};
fight_heros=[9001,9002]
mheros:any = [];
monsters:any = [];
sk_info:any = []
monsters_dead:any = []
heros_dead:any = []
hero_pos:any=[]
enemy_pos:any =[]
vmdata: any = {
name : "纸片精灵大乱斗",
game_over:false,
game_pause:false,
mission:{
once:6, //每波刷新怪物数量
total:1, //总怪物数
exp:0,
exp_max:100,
mexp:0,
mexp_max:100,
hp:0,
ap:0,
def:0,
crit:0,
dodge:0,
dead:0,
mhp:0,
map:0,
mdef:0,
mcrit:0,
mdodge:0,
mdead:0,
reward_num:0, //怪物死亡数
reward_gold:0,
reward_exp:0,
},
gold:{num:9999999,x1:1,x10:0},
exp:{num:1000,x1:1,x10:0},
skp:{num:2000,x1:1,x10:0}, //技能升级点数
energy:{num:10,x1:1,x10:0},
free:{ cost:0,num:3,buy:3,},
goods1:{ cost:2000,num:3,buy:3,},
goods2:{ cost:3000,num:4,buy:3,},
goods3:{ cost:4000,num:5,buy:3,},
};
vmAdd() {
VM.add(this.vmdata, "data");
}
reset() {
for (var key in this.vmdata) {
delete this.vmdata[key];
}
}
}
export var smc: SingletonModuleComp = ecs.getSingleton(SingletonModuleComp);