Launch.ts 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import { _decorator, director, Label, profiler, ProgressBar } from 'cc';
  2. import { csvMgr } from '../core/csv/CsvManager';
  3. import i18n from '../core/i18n/runtime-scripts/LanguageData';
  4. import { audioMgr } from '../core/manager/AudioManager';
  5. import { bundleMgr } from '../core/manager/BundleManager';
  6. import { autoBind } from '../extend/AutoBind';
  7. import { Constants } from '../data/Constants';
  8. import { BaseExp } from '../core/base/BaseExp';
  9. import { userIns } from '../data/UserData';
  10. import { ResUtil } from '../utils/ResUtil';
  11. import PlatformSystem from '../platform/PlatformSystem';
  12. const { ccclass, property } = _decorator;
  13. @ccclass('Launch')
  14. export class Launch extends BaseExp {
  15. @autoBind({type:Label,tooltip:"资源加载lable"})
  16. public load_label: Label;
  17. @autoBind({type: ProgressBar,tooltip: "加载进度"})
  18. public progressBar: ProgressBar = null!;
  19. async start() {
  20. this.load_label.string = i18n("main.加载中...");
  21. //初始化平台接口
  22. PlatformSystem.initialize();
  23. //关闭FPS展示
  24. profiler.hideStats()
  25. Constants.isDebug ? profiler.showStats() : profiler.hideStats();
  26. //先加载配置资源包 更新进度条
  27. await bundleMgr.preloadConfigAllRes((progress) => {
  28. this.progressBar.progress = progress.totalProgress;
  29. });
  30. //加载音效
  31. await audioMgr.initialize();
  32. //调用事例 加载所有CSV表
  33. await csvMgr.loadAll();
  34. //加载map
  35. await ResUtil.loadRes(`map/${userIns.getCurLevelData().map}`);
  36. //进入游戏场景
  37. director.loadScene(Constants.scenesName.game);
  38. }
  39. }