Browse Source

地图异步加载

woso_javan 2 tháng trước cách đây
mục cha
commit
b9e889204a

+ 26 - 0
assets/module_storm_sunder/Script/Manager/GameMgr.ts

@@ -6,6 +6,8 @@ import { PropMgr } from "./PropMgr";
 import { TimerMgr } from "./TimerMgr";
 import { UI_BattleResult } from "db://assets/scripts/UIDef";
 import { PlayerMgr } from "./PlayerMgr";
+import { assetManager, instantiate, Prefab } from "cc";
+import { resLoader } from "db://assets/core_tgx/base/ResLoader";
 
 export class GameMgr {
     private static _instance: GameMgr;
@@ -47,6 +49,7 @@ export class GameMgr {
                 PlayerMgr.inst.reset();
                 break;
             case GameStatus.Playing:
+                await this.addMapNode();
                 await PlayerMgr.inst.setPlayerVisible(true);
                 homeUI.active = false;
                 battleUI.active = true;
@@ -68,6 +71,29 @@ export class GameMgr {
         await PlayerMgr.inst.genareatorAIPlayer();
         TimerMgr.inst.startCountdown();
     }
+
+    //添加地图节点
+    public async addMapNode() {
+        const mapUI = StormSunderGlobalInstance.instance.map;
+        const map = await this.loadAsyncMap();
+        const node = instantiate(map);
+        node.parent = mapUI;
+    }
+
+    //加载地图
+    public async loadAsyncMap(): Promise<Prefab> {
+        return new Promise((resolve, reject) => {
+            const bundle = assetManager.getBundle(resLoader.gameBundleName);
+            if (!bundle) {
+                console.error("module_nut is null!");
+                reject();
+            }
+
+            resLoader.loadAsync(resLoader.gameBundleName, `Prefabs/Map1`, Prefab).then((prefab: Prefab) => {
+                resolve(prefab);
+            })
+        })
+    }
 }
 
 export enum GameStatus {

Những thai đổi đã bị hủy bỏ vì nó quá lớn
+ 131 - 245
assets/module_storm_sunder/rooster_stormsunder.scene


+ 0 - 1
assets/start/Start.ts

@@ -17,7 +17,6 @@ const _preloadRes = [
     { bundle: ModuleDef.BASIC, url: 'ui_alert/UI_Alert', type: 'prefab' },
     { bundle: ModuleDef.BASIC, url: 'ui_tips/UI_Tips', type: 'prefab' },
     { bundle: ModuleDef.BASIC, url: 'ui_waiting/UI_Waiting', type: 'prefab' },
-    { bundle: ModuleDef.MODULE_STORM_SUNDER, url: 'Prefabs/Map', type: 'prefab' },
     { bundle: ModuleDef.MODULE_STORM_SUNDER, url: 'Prefabs/Map1', type: 'prefab' },
     { bundle: ModuleDef.MODULE_STORM_SUNDER, url: 'Prefabs/Blood', type: 'prefab' },
     { bundle: ModuleDef.MODULE_STORM_SUNDER, url: 'Prefabs/PlayerInfo', type: 'prefab' },

Một số tệp đã không được hiển thị bởi vì quá nhiều tập tin thay đổi trong này khác