From c6cc9873f19a5b9a48bb9a3b7dba7e802920a802 Mon Sep 17 00:00:00 2001 From: TJH Date: Wed, 27 May 2026 17:35:51 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=9A=E8=AF=AD=E8=A8=80=E5=A6=82=E6=9E=9C?= =?UTF-8?q?=E9=80=89=E6=8B=A9=E4=BA=86=E4=B8=8D=E6=94=AF=E6=8C=81=E7=9A=84?= =?UTF-8?q?=E8=AF=AD=E8=A8=80=EF=BC=8C=E9=BB=98=E8=AE=A4=E4=B8=BA=E8=8B=B1?= =?UTF-8?q?=E6=96=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/Main/Scripts/managers/I18nManager.ts | 12 +++++++++++- assets/Main/Scripts/managers/UIManager.ts | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/assets/Main/Scripts/managers/I18nManager.ts b/assets/Main/Scripts/managers/I18nManager.ts index 574e227..d15ca2d 100644 --- a/assets/Main/Scripts/managers/I18nManager.ts +++ b/assets/Main/Scripts/managers/I18nManager.ts @@ -33,7 +33,14 @@ export class I18nManager { const task = new Promise((resolve, reject) => { resources.load(path, SpriteFrame, (err, sf) => { this._sfTasks.delete(key); - if (err || !sf) return reject(err); + if (err || !sf) { + resources.load(`i18nSprite2/en/${name}/spriteFrame`, SpriteFrame, (err, sf) => { + this._sfTasks.delete(key); + this.spriteFrameCache.set(key, sf); + resolve(sf); + }); + return; + } this.spriteFrameCache.set(key, sf); resolve(sf); }); @@ -103,6 +110,9 @@ export class I18nManager { let okSpine = await this.preloadAssets('spine', []); this.ready = okSprite && okAtlas && okSpine; + if (!this.ready) { + this.init('en', languageJson) + } } catch (error) { console.error('I18nManager init failed:', error); } diff --git a/assets/Main/Scripts/managers/UIManager.ts b/assets/Main/Scripts/managers/UIManager.ts index e84e403..aaa0571 100644 --- a/assets/Main/Scripts/managers/UIManager.ts +++ b/assets/Main/Scripts/managers/UIManager.ts @@ -38,7 +38,7 @@ export class UIManager { let main = prefab.getChildByName('main'); if (!main) { - console.error(`UIManager ${name}prefab 没有main节点,命名不规范: ${path}`); + // console.error(`UIManager ${name}prefab 没有main节点,命名不规范: ${path}`); return; } if (callBack) callBack(prefab);