55 lines
1.2 KiB
TypeScript
Raw Normal View History

2023-12-03 03:31:19 +08:00
import { app } from "../App";
import { API } from "../consts/API";
2023-12-02 02:13:22 +08:00
import { GAPI, ModeOnHookOV } from "../consts/GAPI";
2023-12-03 03:31:19 +08:00
import { GUI } from "../ui/UIConfig";
2023-12-02 02:13:22 +08:00
import BaseData from "./BaseData";
2024-01-03 15:51:16 +08:00
export enum GOnHookDataEnum{
UPDATE = "GOnHookDataEnum_UPDATE" //刷新信息
}
2023-12-02 02:13:22 +08:00
//无限模式数据类
export default class GOnHookData extends BaseData{
info:ModeOnHookOV;
2024-01-03 15:51:16 +08:00
//是否允许下一关
get isNextLevel(){
if(!this.info) return false;
return this.info.hookInfo.mapStates[this.info.onHookMap] == 1;
}
2023-12-02 02:13:22 +08:00
async onInit() {
2023-12-25 02:06:56 +08:00
await this.onUpdateInfo();
2023-12-02 02:13:22 +08:00
console.log("GOnHookData Info",this.info);
}
2023-12-25 02:06:56 +08:00
//刷新数据
2024-01-03 15:51:16 +08:00
async onUpdateInfo(info?){
this.info = info || await GAPI.GOnHookInfo();
app.event.emit(GOnHookDataEnum.UPDATE);
2023-12-25 02:06:56 +08:00
}
2023-12-03 03:31:19 +08:00
//切换地图
async setMap(mapId:number){
this.info = await GAPI.GOnHookSetMap(mapId);
app.layer.Open(GUI.Tips,{text:"切换地图成功"});
}
2023-12-25 02:06:56 +08:00
//下一关
async onNextLevel(){
2024-01-03 15:51:16 +08:00
let info = await GAPI.GOnHookNextLevel();
if(info) this.onUpdateInfo(info);
return !!info;
}
//战胜当前关卡
async onWinLevel(){
this.onUpdateInfo(await GAPI.GOnHookWinLevel());
2023-12-25 02:06:56 +08:00
}
2023-12-02 02:13:22 +08:00
}