1
This commit is contained in:
@@ -320,7 +320,11 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
||||
// ⭐ 无操作自动退出:加载期间不计时,LoadResources 完成后重新开始计;确保倒计时面板初始隐藏
|
||||
_idleExitArmed = false;
|
||||
HideIdleExitWarning();
|
||||
LoadResources();
|
||||
// ⭐ 资源加载不再在这里启动:由 WebSocketReponseList 在"面板已显示 → 游戏场景加载完成"后
|
||||
// 调用 BeginLoadResources() 触发,保证加载顺序为 面板 → 场景 → 资源。
|
||||
// ⭐ 切换房间:继续用离房时留下的合并进度条,先把新面板自带的进度条藏掉,避免出现两条进度条
|
||||
if (_changeRoomBar != null && JinDuTiao != null)
|
||||
JinDuTiao.Hide();
|
||||
RefreshGGKCount();
|
||||
//UIManager.Instance.ShowBoard("太好看了");
|
||||
var v = JsonConvert.DeserializeObject<WebSocketResponseBase<RoomJoinNotice>>(args.ToString());
|
||||
@@ -1155,6 +1159,15 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
||||
/// </summary>
|
||||
private static int _resourceFlowToken = 0;
|
||||
|
||||
/// <summary>
|
||||
/// 外部触发资源加载:由 WebSocketReponseList 在"游戏面板已显示 → 游戏场景加载完成"后调用,
|
||||
/// 保证加载顺序为 面板(加载页面)→ 场景 → 资源。
|
||||
/// </summary>
|
||||
public void BeginLoadResources()
|
||||
{
|
||||
LoadResources();
|
||||
}
|
||||
|
||||
public async void LoadResources()
|
||||
{
|
||||
// ⭐ 捕获本轮令牌:同时使之前所有在途的加载/卸载残留流程作废
|
||||
@@ -1170,18 +1183,22 @@ public class GameMainPanel_FishBase : GameMainPanel_Base
|
||||
CreateFishManager.Instance.isResources = false;
|
||||
// ⭐ 重置卸载标记,下次进入可重新加载
|
||||
_resourcesUnloaded = false;
|
||||
await AudioResourcesData.LoadAudioGame();
|
||||
|
||||
// ⭐ 加载顺序(配套 AA 分包规划:路线最轻先进 → 鱼 → 音频最重殿后):
|
||||
// ① 路线(几十KB,进房首屏关键,进度条 0→30%)
|
||||
// ② 鱼预制体(30→70%)
|
||||
// ③ 音频(70→80%,Union 全库音频是最重的一步,放最后不再拖住前段进度)
|
||||
// EnterRoom 位置不动(出鱼系统就绪时序与原逻辑一致,仅资源加载顺序调整)
|
||||
await MonsterMoveLine.LoadBezier();
|
||||
if (flow != _resourceFlowToken) return; // ⭐ 期间已退出/切换,本轮作废
|
||||
|
||||
SetLoadProgress(0.2f);
|
||||
await MonsterMoveLine.LoadBezier();
|
||||
if (flow != _resourceFlowToken) return;
|
||||
|
||||
SetLoadProgress(0.4f);
|
||||
SetLoadProgress(0.3f);
|
||||
await FishResourcesData.LoadFishAssetsData();
|
||||
if (flow != _resourceFlowToken) return;
|
||||
|
||||
SetLoadProgress(0.6f);
|
||||
SetLoadProgress(0.7f);
|
||||
await AudioResourcesData.LoadAudioGame();
|
||||
if (flow != _resourceFlowToken) return;
|
||||
|
||||
await Addressables.LoadAssetsAsync<AudioClip>("Audio", clip =>
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user