import GameConfig from "./GameConfig"; import AdManager from "./sdk/AdManager"; import RedpacketModel from "./sdk/model/RedpacketModel"; import AppSdk from "./sdk/AppSdk"; class Main { constructor() { //根据IDE设置初始化引擎 if (window["Laya3D"]) Laya3D.init(GameConfig.width, GameConfig.height); else Laya.init(GameConfig.width, GameConfig.height, Laya["WebGL"]); Laya["Physics"] && Laya["Physics"].enable(); Laya["DebugPanel"] && Laya["DebugPanel"].enable(); Laya.stage.scaleMode = GameConfig.scaleMode; Laya.stage.screenMode = GameConfig.screenMode; Laya.stage.alignV = GameConfig.alignV; Laya.stage.alignH = GameConfig.alignH; //兼容微信不支持加载scene后缀场景 Laya.URL.exportSceneToJson = GameConfig.exportSceneToJson; //打开调试面板(通过IDE设置调试模式,或者url地址增加debug=true参数,均可打开调试面板) if (GameConfig.debug || Laya.Utils.getQueryString("debug") == "true") Laya.enableDebugPanel(); if (GameConfig.physicsDebug && Laya["PhysicsDebugDraw"]) Laya["PhysicsDebugDraw"].enable(); if (GameConfig.stat) Laya.Stat.show(); Laya.alertGlobalError = true; //激活资源版本控制,version.json由IDE发布功能自动生成,如果没有也不影响后续流程 Laya.ResourceVersion.enable("version.json", Laya.Handler.create(this, this.onVersionLoaded), Laya.ResourceVersion.FILENAME_VERSION); } onVersionLoaded(): void { //激活大小图映射,加载小图的时候,如果发现小图在大图合集里面,则优先加载大图合集,而不是小图 Laya.AtlasInfoManager.enable("fileconfig.json", Laya.Handler.create(this, this.onConfigLoaded)); } onConfigLoaded(): void { this.initSdk(); this.loadData(); } /**初始化SDK */ private async initSdk() { if (AppSdk.I.isMyBridge) { AppSdk.init() await AppSdk.I.initSdk(); this.toggleScene(); } else { Laya.timer.once(100, this, this.initSdk); } } private loadData() { // 处理游戏加载 //加载完成 this.toggleScene(); } private checkLoad: number = 0; private toggleScene() { //加载IDE指定的场景 this.checkLoad++; if (this.checkLoad < 2) { return } AppSdk.I.hideSplash();//隐藏加载页 可根据需求放到其他位置 GameConfig.startScene && Laya.Scene.open(GameConfig.startScene); } } //激活启动类 new Main();