From b1b9a387a63e1ce77cf387b90ec170c7a05bb53b Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期三, 03 十二月 2025 18:29:38 +0800
Subject: [PATCH] 125 战斗 替换加载蓝队逻辑 统一替换引用计数
---
Main/System/Battle/BattleResources/BattleUnloadManager.cs | 96 +----------------------------------------------
1 files changed, 3 insertions(+), 93 deletions(-)
diff --git a/Main/System/Battle/BattleResources/BattleUnloadManager.cs b/Main/System/Battle/BattleResources/BattleUnloadManager.cs
index 9645371..08a85ef 100644
--- a/Main/System/Battle/BattleResources/BattleUnloadManager.cs
+++ b/Main/System/Battle/BattleResources/BattleUnloadManager.cs
@@ -1,103 +1,13 @@
using UnityEngine;
-using System.Collections.Generic;
public class BattleUnloadManager
{
/// <summary>
- /// 鍗歌浇鎸囧畾鎴樺満鐨勮摑闃熻祫婧�
- /// </summary>
- public void UnloadBlueTeamResources(BattleCacheManager cacheManager, string battleGuid)
- {
- var blueSpineCache = cacheManager.GetSpineCache(false, battleGuid);
- var blueAudioCache = cacheManager.GetAudioCache(false, battleGuid);
-
- int spineCount = UnloadResourceCache(blueSpineCache);
- int audioCount = UnloadResourceCache(blueAudioCache);
-
- cacheManager.ClearBlueTeamCache(battleGuid);
-
- Debug.Log($"BattleUnloadManager: Unloaded blue team for battlefield {battleGuid} - Spine: {spineCount}, Audio: {audioCount}");
- }
-
- /// <summary>
- /// 鍗歌浇绾㈤槦璧勬簮锛堥槦浼嶅彉鏇存椂浣跨敤锛�
- /// </summary>
- public void UnloadRedTeamResources(BattleCacheManager cacheManager)
- {
- var redSpineCache = cacheManager.GetSpineCache(true, "");
- var redAudioCache = cacheManager.GetAudioCache(true, "");
-
- int spineCount = UnloadResourceCache(redSpineCache);
- int audioCount = UnloadResourceCache(redAudioCache);
-
- cacheManager.ClearRedTeamCache();
-
- Debug.Log($"BattleUnloadManager: Unloaded red team - Spine: {spineCount}, Audio: {audioCount}");
- }
-
- /// <summary>
- /// 鍗歌浇鏁翠釜璧勬簮缂撳瓨
- /// </summary>
- private int UnloadResourceCache(Dictionary<string, BattleResCache.CachedResource> cache)
- {
- int unloadCount = 0;
-
- foreach (var kvp in cache)
- {
- if (kvp.Value.CanUnload())
- {
- UnloadSingleResource(kvp.Value);
- unloadCount++;
- }
- }
-
- return unloadCount;
- }
-
- /// <summary>
- /// 鍗歌浇鍗曚釜璧勬簮
- /// </summary>
- private void UnloadSingleResource(BattleResCache.CachedResource cachedRes)
- {
- if (cachedRes == null || cachedRes.Asset == null)
- {
- return;
- }
-
- string assetKey = cachedRes.Identifier.GetKey();
-
- // 鍗歌浇璧勬簮
- ResManager.Instance.UnloadAsset(
- cachedRes.Identifier.Directory.ToLower(),
- cachedRes.Identifier.AssetName.ToLower()
- );
-
- Debug.Log($"BattleUnloadManager: Unloaded resource: {assetKey}");
- }
-
- /// <summary>
- /// 鍗歌浇鎵�鏈夎祫婧�
- /// </summary>
- public void UnloadAllResources(BattleCacheManager cacheManager, string battleGuid = "")
- {
- UnloadRedTeamResources(cacheManager);
- if (!string.IsNullOrEmpty(battleGuid))
- {
- UnloadBlueTeamResources(cacheManager, battleGuid);
- }
-
- Debug.Log("BattleUnloadManager: All resources unloaded");
- }
-
- /// <summary>
- /// 鍗歌浇鎴樺満璧勬簮
+ /// 鍗歌浇鎴樺満璧勬簮锛堢粺涓�澶勭悊绾㈣摑闃燂級
/// </summary>
public void UnloadBattleResources(BattleCacheManager cacheManager, string battleGuid)
{
- // 鍗歌浇钃濋槦璧勬簮
- UnloadBlueTeamResources(cacheManager, battleGuid);
-
- // ===== 鏂板锛氭敞閿�鎴樺満绾㈤槦寮曠敤锛堣嚜鍔ㄦ寜寮曠敤璁℃暟鍗歌浇锛�=====
- cacheManager.UnregisterBattlefieldRedTeam(battleGuid);
+ cacheManager.UnregisterBattlefield(battleGuid);
+ Debug.Log($"BattleUnloadManager: Unloaded battlefield {battleGuid}");
}
}
\ No newline at end of file
--
Gitblit v1.8.0