From 2bfcee1e0ac2fb7a4bfacd552d3a5053c614dccf Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期四, 01 十一月 2018 11:17:22 +0800
Subject: [PATCH] 3335 资源下载优先级别更新。

---
 Core/GameEngine/Model/TelPartialConfig/PartPriorBundleConfig.cs |   81 +++++++++++++++-------------------------
 1 files changed, 30 insertions(+), 51 deletions(-)

diff --git a/Core/GameEngine/Model/TelPartialConfig/PartPriorBundleConfig.cs b/Core/GameEngine/Model/TelPartialConfig/PartPriorBundleConfig.cs
index 3e96360..fea7e4b 100644
--- a/Core/GameEngine/Model/TelPartialConfig/PartPriorBundleConfig.cs
+++ b/Core/GameEngine/Model/TelPartialConfig/PartPriorBundleConfig.cs
@@ -7,75 +7,32 @@
 {
     public partial class PriorBundleConfig : ConfigBase
     {
-        static List<string> m_Audios;
-        public static List<string> audios {
-            get {
-                if (!inited)
-                {
-                    Init();
-                }
-                return m_Audios;
-            }
-        }
-
-        static List<string> m_Effects;
-        public static List<string> effects {
-            get {
-                if (!inited)
-                {
-                    Init();
-                }
-                return m_Effects;
-            }
-        }
-
-        static List<string> m_Scenes;
-        public static List<string> scenes {
-            get {
-                if (!inited)
-                {
-                    Init();
-                }
-                return m_Scenes;
-            }
-        }
-
-        static List<string> m_Mobs;
-        public static List<string> mobs {
-            get {
-                if (!inited)
-                {
-                    Init();
-                }
-                return m_Mobs;
-            }
-        }
+        static Dictionary<string, PriorBundleConfig> m_Audios = new Dictionary<string, PriorBundleConfig>();
+        static Dictionary<string, PriorBundleConfig> m_Effects = new Dictionary<string, PriorBundleConfig>();
+        static Dictionary<string, PriorBundleConfig> m_Scenes = new Dictionary<string, PriorBundleConfig>();
+        static Dictionary<string, PriorBundleConfig> m_Mobs = new Dictionary<string, PriorBundleConfig>();
 
         static bool inited = false;
 
         static void Init()
         {
             var values = Config.Instance.GetAllValues<PriorBundleConfig>();
-            m_Audios = new List<string>();
-            m_Effects = new List<string>();
-            m_Scenes = new List<string>();
-            m_Mobs = new List<string>();
 
             foreach (var value in values)
             {
                 switch (value.AssetType)
                 {
                     case 1:
-                        m_Scenes.Add(value.AssetABName.ToLower());
+                        m_Scenes[value.AssetABName.ToLower()] = value;
                         break;
                     case 2:
-                        m_Mobs.Add(value.AssetABName.ToLower());
+                        m_Mobs[value.AssetABName.ToLower()] = value;
                         break;
                     case 3:
-                        m_Audios.Add(value.AssetABName.ToLower());
+                        m_Audios[value.AssetABName.ToLower()] = value;
                         break;
                     case 4:
-                        m_Effects.Add(value.AssetABName.ToLower());
+                        m_Effects[value.AssetABName.ToLower()] = value;
                         break;
                 }
             }
@@ -83,6 +40,28 @@
             inited = true;
         }
 
+        public static int GetAssetPrior(AssetVersion.AssetCategory category, string fileName)
+        {
+            if (!inited)
+            {
+                Init();
+            }
+            fileName = fileName.ToLower();
+            switch (category)
+            {
+                case AssetVersion.AssetCategory.Scene:
+                    return m_Scenes.ContainsKey(fileName) ? m_Scenes[fileName].Prior : 100;
+                case AssetVersion.AssetCategory.Mob:
+                    return m_Mobs.ContainsKey(fileName) ? m_Mobs[fileName].Prior : 101;
+                case AssetVersion.AssetCategory.Effect:
+                    return m_Effects.ContainsKey(fileName) ? m_Effects[fileName].Prior : 102;
+                case AssetVersion.AssetCategory.Audio:
+                    return m_Audios.ContainsKey(fileName) ? m_Audios[fileName].Prior : 103;
+                default:
+                    return 0;
+            }
+
+        }
     }
 
 }
\ No newline at end of file

--
Gitblit v1.8.0