Complete Cocos Creator port with level bundles, themes, and tooling.
Adds level prefabs, theme assets, audio, extensions, and deployment scripts for the Unity WebGL migration. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
23
assets/scripts/core/ResourcesBundle.ts
Normal file
23
assets/scripts/core/ResourcesBundle.ts
Normal file
@@ -0,0 +1,23 @@
|
||||
import { assetManager } from 'cc';
|
||||
|
||||
const RESOURCES_BUNDLE = 'resources';
|
||||
|
||||
let bundlePromise: Promise<assetManager.Bundle> | null = null;
|
||||
|
||||
/** 拆分分包后须先 loadBundle('resources'),resources.load 才可用 */
|
||||
export function ensureResourcesBundle(): Promise<assetManager.Bundle> {
|
||||
const existing = assetManager.getBundle(RESOURCES_BUNDLE);
|
||||
if (existing) return Promise.resolve(existing);
|
||||
if (bundlePromise) return bundlePromise;
|
||||
bundlePromise = new Promise((resolve, reject) => {
|
||||
assetManager.loadBundle(RESOURCES_BUNDLE, (err, bundle) => {
|
||||
bundlePromise = null;
|
||||
if (err || !bundle) {
|
||||
reject(err ?? new Error(`bundle "${RESOURCES_BUNDLE}" unavailable`));
|
||||
return;
|
||||
}
|
||||
resolve(bundle);
|
||||
});
|
||||
});
|
||||
return bundlePromise;
|
||||
}
|
||||
Reference in New Issue
Block a user