68 lines
1.9 KiB
TypeScript
68 lines
1.9 KiB
TypeScript
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 { HeroUI, MissionData, VmInfo } from "./config/Mission";
|
|
|
|
|
|
// 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!;
|
|
mission:any={
|
|
status:0, //0:未开始 1:进行中 2:胜利 3:失败
|
|
play:false,
|
|
pause:false,
|
|
in_select:false,
|
|
score:888,
|
|
};
|
|
fight_heros:any={
|
|
0:5001,
|
|
1:5005,
|
|
2:0,
|
|
3:0,
|
|
4:0,
|
|
}
|
|
heros:any = {
|
|
5001:{lv:1},
|
|
5005:{lv:1},
|
|
5007:{lv:1},
|
|
};
|
|
monsters:any = [];
|
|
sk_info:any = []
|
|
monsters_dead:any = []
|
|
heros_dead:any = []
|
|
enhancements:any=[]
|
|
vmdata: any = {
|
|
game_over:false,
|
|
game_pause:false,
|
|
mission_data:{ },
|
|
hero:{ },
|
|
hero1:{},
|
|
hero2:{},
|
|
hero3:{},
|
|
boss:{ },
|
|
};
|
|
vmAdd() {
|
|
this.vmdata.mission_data=JSON.parse(JSON.stringify(MissionData))
|
|
this.vmdata.hero=JSON.parse(JSON.stringify(VmInfo))
|
|
this.vmdata.boss=JSON.parse(JSON.stringify(VmInfo))
|
|
this.vmdata.hero1=JSON.parse(JSON.stringify(HeroUI))
|
|
this.vmdata.hero2=JSON.parse(JSON.stringify(HeroUI))
|
|
this.vmdata.hero3=JSON.parse(JSON.stringify(HeroUI))
|
|
VM.add(this.vmdata, "data");
|
|
|
|
}
|
|
reset() {
|
|
for (var key in this.vmdata) {
|
|
delete this.vmdata[key];
|
|
}
|
|
}
|
|
}
|
|
|
|
export var smc: SingletonModuleComp = ecs.getSingleton(SingletonModuleComp); |