LoadScene.ts 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. import SDK from "./sdk/SDK";
  2. import { App } from "./Manager/App";
  3. import hallModel from "./model/hallModel";
  4. import NotifyModel from "./model/NotifyModel";
  5. import TimeControl from "./TimeControl";
  6. import { EncryptType } from "./sdk/tools/EncryptUtil";
  7. const { ccclass, property } = cc._decorator;
  8. @ccclass
  9. export default class loadScene extends cc.Component {
  10. @property(cc.Label)
  11. public percentLabel: cc.Label = null;
  12. @property(cc.ProgressBar)
  13. public loadingBar: cc.ProgressBar = null;
  14. private loadSceneName: string = "hallScene";
  15. // LIFE-CYCLE CALLBACKS:
  16. onLoad() {
  17. App.Facade.init(false, cc.size(720, 1280), false, true);
  18. App.startUp();
  19. App.DataManager.init();
  20. TimeControl.instance.OfflineTime();
  21. this.initModel();
  22. let gameId: any = "richestMan";
  23. SDK.Instance.init(gameId, EncryptType.ED_CM);
  24. this.LoadOther();
  25. }
  26. initModel(): void {
  27. App.Facade.registerModel(hallModel);
  28. App.Facade.registerModel(NotifyModel);
  29. }
  30. LoadOther() {
  31. // this.loadConfigs(() => { App.DataManager.LoadAllPropPrefab(this.loadScene.bind(this)) });
  32. // App.DataManager.LoadAllPropPrefab(this.loadScene.bind(this)) ;
  33. this.loadScene();
  34. }
  35. // private loadConfig() {
  36. // App.ConfigMgr.loadConfigs(this.loadScene.bind(this));
  37. // }
  38. private loadScene() {
  39. App.Facade.runBundleScene(this.loadSceneName,this.loadSceneName,this.loadHallProgress.bind(this))
  40. }
  41. /** 导入配置文件 */
  42. private loadConfigs(cb: Function) {
  43. console.log("读取配置文件");
  44. let url = "configs"
  45. let self = this;
  46. cc.loader.loadResDir(url, cc.Asset, (err, res) => {
  47. App.DataManager.Configs = res;
  48. App.DataManager.LevelCount = res.length;
  49. res.sort((a: any, b: any) => { return Number(a._name) - Number(b._name) });
  50. console.log("配置文件解析完成", res);
  51. cb();
  52. })
  53. }
  54. /**加载大厅界面进度*/
  55. private loadHallProgress(completedCount: number, totalCount: number, item: any) {
  56. let progress = completedCount / totalCount;
  57. this.setProgress(Math.round(progress * 100));
  58. }
  59. /**加载进度 */
  60. private setProgress(value: number) {
  61. this.loadingBar.progress = value / 100;
  62. this.percentLabel.getComponent(cc.Label).string = value + "%";
  63. }
  64. // update (dt) {}
  65. }