From 8ad0800aa926e02e05f63aa5cbf030251850a293 Mon Sep 17 00:00:00 2001
From: yyl <yyl>
Date: 星期四, 22 五月 2025 18:11:46 +0800
Subject: [PATCH] 登录流程前的所有预备流程

---
 Main/Config/Configs/ChestsAwardConfig.cs                |    8 
 Main/Config/Configs/MailConfig.cs                       |    8 
 Main/Config/Configs/TitleStarUpConfig.cs                |    8 
 Main/Config/Configs/SkillConfig.cs                      |    8 
 Main/Config/Configs/CTGConfig.cs                        |    8 
 Main/Config/Configs/DienstgradConfig.cs                 |    8 
 Main/Config/Configs/DirtyWordConfig.cs                  |    8 
 Main/Config/Configs/EmojiPackConfig.cs                  |    8 
 Main/Core/GameEngine/Launch/RequestPermissionStart.cs   |    3 
 Main/Config/Configs/FunctionTeamSetConfig.cs            |    8 
 Main/Core/GameEngine/Launch/LaunchFadeOutTask.cs        |   78 ++++
 Main/Config/Configs/OrderInfoConfig.cs                  |    8 
 Main/Config/Configs/NPCExConfig.cs                      |    8 
 Main/Core/GameEngine/Launch/AssetBundleInitTask.cs.meta |   11 
 Main/Config/Configs/EffectConfig.cs                     |    8 
 Main/Config/ConfigBase.cs                               |   14 
 Main/Config/Configs/FuncConfigConfig.cs                 |    8 
 Main/Config/Configs/PlayerFaceConfig.cs                 |    8 
 Main/Core/GameEngine/Launch/ConfigInitTask.cs           |   58 +++
 Main/Config/Configs/LanguageConfig.cs                   |    8 
 Main/Config/Configs/PlayerLVConfig.cs                   |    8 
 Main/Manager/ConfigManager.cs                           |    2 
 Main/Config/Configs/GuideConfig.cs                      |    8 
 Main/Config/Configs/AppointItemConfig.cs                |    8 
 Main/System/Debug/DebugUtility.cs                       |    8 
 Main/System/ClientVersion.meta                          |    8 
 Main/UI/RequestSecretWin.cs                             |   70 ++++
 Main/Core/GameEngine/Launch/WaitTask.cs.meta            |   11 
 Main/Config/Configs/CTGSelectItemConfig.cs              |    8 
 Main/Config/Configs/FamilyConfig.cs                     |    8 
 Main/UI/RequestSecretWin.cs.meta                        |   11 
 Main/Config/Configs/FaceConfig.cs                       |    8 
 Main/Config/Configs/SuccessConfig.cs                    |    8 
 Main/Config/Configs/PriorLanguageConfig.cs              |    8 
 Main/Config/Configs/PlayerFacePicStarConfig.cs          |    8 
 Main/Core/GameEngine/Launch/WaitTask.cs                 |   36 ++
 Main/Config/Configs/RichTextMsgReplaceConfig.cs         |    8 
 Main/Core/GameEngine/Launch/AssetBundleInitTask.cs      |   57 +++
 Main/Config/Configs/PlayerFacePicConfig.cs              |    8 
 Main/Config/Configs/RuleConfig.cs                       |    8 
 Main/Config/Configs/SysInfoConfig.cs                    |    8 
 Main/Core/GameEngine/Launch/InitSettingTask.cs          |    6 
 Main/Core/GameEngine/Launch/DownLoadAssetTask.cs        |  203 -----------
 Main/Config/Configs/NPCConfig.cs                        |    8 
 Main/UI/UIManager.cs                                    |    4 
 Main/Config/Configs/AudioConfig.cs                      |    8 
 Main/Config/Configs/GmCmdConfig.cs                      |    8 
 Main/Config/Configs/IconConfig.cs                       |    8 
 Main/Config/Configs/KickOutReasonConfig.cs              |    8 
 Main/Config/Configs/ItemConfig.cs                       |    8 
 Main/Config/Configs/priorbundleConfig.cs                |    8 
 Main/Main.cs                                            |   15 
 Main/Config/Configs/FuncOpenLVConfig.cs                 |    8 
 Main/Config/Configs/StoreConfig.cs                      |    8 
 Main/Config/Configs/InitialFunctionConfig.cs            |    8 
 Main/Config/Configs/ChestsConfig.cs                     |    8 
 Main/Core/GameEngine/Launch/BuiltInAssetCopyTask.cs     |   10 
 Main/Core/GameEngine/Launch/LaunchFadeOutTask.cs.meta   |   11 
 Main/Config/Configs/GetItemWaysConfig.cs                |    8 
 Main/Config/Configs/PlayerFaceStarConfig.cs             |    8 
 Main/Core/GameEngine/Launch/ConfigInitTask.cs.meta      |   11 
 Main/Core/GameEngine/Launch/LaunchInHot.cs              |   48 +
 Main/UI/Launch.meta                                     |    8 
 63 files changed, 722 insertions(+), 289 deletions(-)

diff --git a/Main/Config/ConfigBase.cs b/Main/Config/ConfigBase.cs
index c532b35..592b3db 100644
--- a/Main/Config/ConfigBase.cs
+++ b/Main/Config/ConfigBase.cs
@@ -52,6 +52,8 @@
 
     public static void Init(string[] lines)
     {
+        dic.Clear();
+        
         Dictionary<string, string> rawDatas = new Dictionary<string, string>();
 
         for (int i = 3; i < lines.Length; i++)
@@ -67,7 +69,19 @@
             T config = new T();
             U key = config.LoadKey(strKey);
             config.LoadConfig(line);
+            #if UNITY_EDITOR
+            try
+            {
+            #endif
             dic.Add(key, config);
+            #if UNITY_EDITOR
+            }
+            catch (ArgumentException exception)
+            {
+                Debug.LogError(typeof(T).Name  + " 閲嶅鐨刱ey " + key + " " + exception.Message);
+            }
+            #endif
+            
         }
 
         isInit = true;
diff --git a/Main/Config/Configs/AppointItemConfig.cs b/Main/Config/Configs/AppointItemConfig.cs
index 4a4b185..331d65e 100644
--- a/Main/Config/Configs/AppointItemConfig.cs
+++ b/Main/Config/Configs/AppointItemConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -25,6 +25,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out ID); 
 
@@ -55,5 +56,10 @@
 					 int.TryParse(LegendAttrValueStringArray[i],out LegendAttrValue[i]);
 				}
 			}
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/AudioConfig.cs b/Main/Config/Configs/AudioConfig.cs
index 072c30e..0e5806b 100644
--- a/Main/Config/Configs/AudioConfig.cs
+++ b/Main/Config/Configs/AudioConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -25,11 +25,17 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out ID); 
 
 			Folder = tables[1];
 
 			Audio = tables[2];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/CTGConfig.cs b/Main/Config/Configs/CTGConfig.cs
index 24bed74..8c7a6fa 100644
--- a/Main/Config/Configs/CTGConfig.cs
+++ b/Main/Config/Configs/CTGConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -38,6 +38,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out RecordID); 
 
@@ -70,5 +71,10 @@
 			int.TryParse(tables[14],out PayType); 
 
 			int.TryParse(tables[15],out Percentage); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/CTGSelectItemConfig.cs b/Main/Config/Configs/CTGSelectItemConfig.cs
index 8df61f3..779edb7 100644
--- a/Main/Config/Configs/CTGSelectItemConfig.cs
+++ b/Main/Config/Configs/CTGSelectItemConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -25,11 +25,17 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out SelectID); 
 
 			int.TryParse(tables[1],out ItemID); 
 
 			int.TryParse(tables[2],out ItemCount); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/ChestsAwardConfig.cs b/Main/Config/Configs/ChestsAwardConfig.cs
index b4c5b27..583575e 100644
--- a/Main/Config/Configs/ChestsAwardConfig.cs
+++ b/Main/Config/Configs/ChestsAwardConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -30,6 +30,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out ID); 
 
@@ -46,5 +47,10 @@
 			Probability2 = tables[6];
 
 			JobItem = tables[7];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/ChestsConfig.cs b/Main/Config/Configs/ChestsConfig.cs
index 8bd5755..e882a80 100644
--- a/Main/Config/Configs/ChestsConfig.cs
+++ b/Main/Config/Configs/ChestsConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -27,6 +27,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out BoxID); 
 
@@ -37,5 +38,10 @@
 			int.TryParse(tables[3],out OpenMoney); 
 
 			int.TryParse(tables[4],out OpenShow); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/DienstgradConfig.cs b/Main/Config/Configs/DienstgradConfig.cs
index 71001b8..1343779 100644
--- a/Main/Config/Configs/DienstgradConfig.cs
+++ b/Main/Config/Configs/DienstgradConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -35,6 +35,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out ID); 
 
@@ -97,5 +98,10 @@
 			int.TryParse(tables[11],out missionId); 
 
 			int.TryParse(tables[12],out order); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/DirtyWordConfig.cs b/Main/Config/Configs/DirtyWordConfig.cs
index b82e640..98b2377 100644
--- a/Main/Config/Configs/DirtyWordConfig.cs
+++ b/Main/Config/Configs/DirtyWordConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -24,9 +24,15 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out id); 
 
 			word = tables[1];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/EffectConfig.cs b/Main/Config/Configs/EffectConfig.cs
index 4501868..cce7f22 100644
--- a/Main/Config/Configs/EffectConfig.cs
+++ b/Main/Config/Configs/EffectConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -31,6 +31,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out id); 
 
@@ -49,5 +50,10 @@
 			nodeName = tables[7];
 
 			int.TryParse(tables[8],out notShow); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/EmojiPackConfig.cs b/Main/Config/Configs/EmojiPackConfig.cs
index 471272c..f70d35d 100644
--- a/Main/Config/Configs/EmojiPackConfig.cs
+++ b/Main/Config/Configs/EmojiPackConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -31,6 +31,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out EmojiPackID); 
 
@@ -49,5 +50,10 @@
 			UnlockNeedItemList = JsonMapper.ToObject<int[][]>(tables[7].Replace("(", "[").Replace(")", "]")); 
 
 			Descriptive = tables[8];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/FaceConfig.cs b/Main/Config/Configs/FaceConfig.cs
index 318fc04..7cf29db 100644
--- a/Main/Config/Configs/FaceConfig.cs
+++ b/Main/Config/Configs/FaceConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -28,6 +28,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         name = tables[0];
 
@@ -40,5 +41,10 @@
 			int.TryParse(tables[4],out EmojiPackID); 
 
 			folder = tables[5];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/FamilyConfig.cs b/Main/Config/Configs/FamilyConfig.cs
index 02ad200..4f55b1f 100644
--- a/Main/Config/Configs/FamilyConfig.cs
+++ b/Main/Config/Configs/FamilyConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -30,6 +30,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out familyLV); 
 
@@ -46,5 +47,10 @@
 			int.TryParse(tables[6],out bossFBCnt); 
 
 			int.TryParse(tables[7],out ZhenbaogeWeights); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/FuncConfigConfig.cs b/Main/Config/Configs/FuncConfigConfig.cs
index 11141e3..94b9c55 100644
--- a/Main/Config/Configs/FuncConfigConfig.cs
+++ b/Main/Config/Configs/FuncConfigConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -28,6 +28,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         KEY = tables[0];
 
@@ -40,5 +41,10 @@
 			Numerical4 = tables[4];
 
 			Numerical5 = tables[5];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/FuncOpenLVConfig.cs b/Main/Config/Configs/FuncOpenLVConfig.cs
index 6c7f16a..f61c80c 100644
--- a/Main/Config/Configs/FuncOpenLVConfig.cs
+++ b/Main/Config/Configs/FuncOpenLVConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -33,6 +33,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out FuncId); 
 
@@ -55,5 +56,10 @@
 			int.TryParse(tables[9],out open); 
 
 			int.TryParse(tables[10],out ContinueTask); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/FunctionTeamSetConfig.cs b/Main/Config/Configs/FunctionTeamSetConfig.cs
index cf89479..d5dd0b1 100644
--- a/Main/Config/Configs/FunctionTeamSetConfig.cs
+++ b/Main/Config/Configs/FunctionTeamSetConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -30,6 +30,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out FuncMapID); 
 
@@ -46,5 +47,10 @@
 			int.TryParse(tables[6],out SortReverse); 
 
 			int.TryParse(tables[7],out OPLimitInAct); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/GetItemWaysConfig.cs b/Main/Config/Configs/GetItemWaysConfig.cs
index 3155b82..9d47cb8 100644
--- a/Main/Config/Configs/GetItemWaysConfig.cs
+++ b/Main/Config/Configs/GetItemWaysConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -30,6 +30,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out ID); 
 
@@ -46,5 +47,10 @@
 			int.TryParse(tables[6],out ActiveType); 
 
 			int.TryParse(tables[7],out customize); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/GmCmdConfig.cs b/Main/Config/Configs/GmCmdConfig.cs
index cdbd3ae..75cb94f 100644
--- a/Main/Config/Configs/GmCmdConfig.cs
+++ b/Main/Config/Configs/GmCmdConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -25,11 +25,17 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out Id); 
 
 			Cmd = tables[1];
 
 			ParamSet = tables[2];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/GuideConfig.cs b/Main/Config/Configs/GuideConfig.cs
index 2f723d4..a4b73de 100644
--- a/Main/Config/Configs/GuideConfig.cs
+++ b/Main/Config/Configs/GuideConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -34,6 +34,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out ID); 
 
@@ -82,5 +83,10 @@
 			}
 
 			int.TryParse(tables[11],out AutoCompleteTime); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/IconConfig.cs b/Main/Config/Configs/IconConfig.cs
index 9c80117..deafd07 100644
--- a/Main/Config/Configs/IconConfig.cs
+++ b/Main/Config/Configs/IconConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -25,11 +25,17 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         id = tables[0];
 
 			folder = tables[1];
 
 			sprite = tables[2];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/InitialFunctionConfig.cs b/Main/Config/Configs/InitialFunctionConfig.cs
index e571e36..c8b376d 100644
--- a/Main/Config/Configs/InitialFunctionConfig.cs
+++ b/Main/Config/Configs/InitialFunctionConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -28,6 +28,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         KEY = tables[0];
 
@@ -40,5 +41,10 @@
 			Numerical4 = tables[4];
 
 			Numerical5 = tables[5];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/ItemConfig.cs b/Main/Config/Configs/ItemConfig.cs
index b9fe482..70e9cae 100644
--- a/Main/Config/Configs/ItemConfig.cs
+++ b/Main/Config/Configs/ItemConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -95,6 +95,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out ID); 
 
@@ -277,5 +278,10 @@
 			}
 
 			int.TryParse(tables[72],out BaseEffectID); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/KickOutReasonConfig.cs b/Main/Config/Configs/KickOutReasonConfig.cs
index cf97dd3..90cad18 100644
--- a/Main/Config/Configs/KickOutReasonConfig.cs
+++ b/Main/Config/Configs/KickOutReasonConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -24,9 +24,15 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out id); 
 
 			kickout = tables[1];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/LanguageConfig.cs b/Main/Config/Configs/LanguageConfig.cs
index e3f604b..d6f476f 100644
--- a/Main/Config/Configs/LanguageConfig.cs
+++ b/Main/Config/Configs/LanguageConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -24,9 +24,15 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         id = tables[0];
 
 			content = tables[1];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/MailConfig.cs b/Main/Config/Configs/MailConfig.cs
index a573954..14be290 100644
--- a/Main/Config/Configs/MailConfig.cs
+++ b/Main/Config/Configs/MailConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -25,11 +25,17 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         MailType = tables[0];
 
 			Title = tables[1];
 
 			Content = tables[2];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/NPCConfig.cs b/Main/Config/Configs/NPCConfig.cs
index 8332b51..a19878b 100644
--- a/Main/Config/Configs/NPCConfig.cs
+++ b/Main/Config/Configs/NPCConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -81,6 +81,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out NPCID); 
 
@@ -211,5 +212,10 @@
 			int.TryParse(tables[57],out NPCSpeakID); 
 
 			Equips = tables[58];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/NPCExConfig.cs b/Main/Config/Configs/NPCExConfig.cs
index c419c3c..fc8ac8e 100644
--- a/Main/Config/Configs/NPCExConfig.cs
+++ b/Main/Config/Configs/NPCExConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -24,9 +24,15 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out NPCID); 
 
 			long.TryParse(tables[1],out SuppressFightPower); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/OrderInfoConfig.cs b/Main/Config/Configs/OrderInfoConfig.cs
index 5e30fc0..42e9716 100644
--- a/Main/Config/Configs/OrderInfoConfig.cs
+++ b/Main/Config/Configs/OrderInfoConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -32,6 +32,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out id); 
 
@@ -52,5 +53,10 @@
 			Name = tables[8];
 
 			StoreOrderInfo3 = tables[9];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/PlayerFaceConfig.cs b/Main/Config/Configs/PlayerFaceConfig.cs
index baad089..5e907ea 100644
--- a/Main/Config/Configs/PlayerFaceConfig.cs
+++ b/Main/Config/Configs/PlayerFaceConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -36,6 +36,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out FaceID); 
 
@@ -100,5 +101,10 @@
 			int.TryParse(tables[12],out LightFightPower); 
 
 			Descriptive = tables[13];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/PlayerFacePicConfig.cs b/Main/Config/Configs/PlayerFacePicConfig.cs
index 5fe86d6..b02a01e 100644
--- a/Main/Config/Configs/PlayerFacePicConfig.cs
+++ b/Main/Config/Configs/PlayerFacePicConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -34,6 +34,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out FacePicID); 
 
@@ -82,5 +83,10 @@
 			int.TryParse(tables[10],out LightFightPower); 
 
 			Descriptive = tables[11];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/PlayerFacePicStarConfig.cs b/Main/Config/Configs/PlayerFacePicStarConfig.cs
index e913de5..c4c58a0 100644
--- a/Main/Config/Configs/PlayerFacePicStarConfig.cs
+++ b/Main/Config/Configs/PlayerFacePicStarConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -28,6 +28,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out index); 
 
@@ -64,5 +65,10 @@
 					 int.TryParse(StarAttrValueStringArray[i],out StarAttrValue[i]);
 				}
 			}
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/PlayerFaceStarConfig.cs b/Main/Config/Configs/PlayerFaceStarConfig.cs
index b066a2c..bb0dc76 100644
--- a/Main/Config/Configs/PlayerFaceStarConfig.cs
+++ b/Main/Config/Configs/PlayerFaceStarConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -28,6 +28,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out index); 
 
@@ -64,5 +65,10 @@
 					 int.TryParse(StarAttrValueStringArray[i],out StarAttrValue[i]);
 				}
 			}
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/PlayerLVConfig.cs b/Main/Config/Configs/PlayerLVConfig.cs
index 25440a2..a996a26 100644
--- a/Main/Config/Configs/PlayerLVConfig.cs
+++ b/Main/Config/Configs/PlayerLVConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -30,6 +30,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out LV); 
 
@@ -46,5 +47,10 @@
 			int.TryParse(tables[6],out fightPower); 
 
 			int.TryParse(tables[7],out IceLodeFightPower); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/PriorLanguageConfig.cs b/Main/Config/Configs/PriorLanguageConfig.cs
index 163cf54..55e85fc 100644
--- a/Main/Config/Configs/PriorLanguageConfig.cs
+++ b/Main/Config/Configs/PriorLanguageConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -24,9 +24,15 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out Key); 
 
 			Content = tables[1];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/RichTextMsgReplaceConfig.cs b/Main/Config/Configs/RichTextMsgReplaceConfig.cs
index e0ebac8..6a1317f 100644
--- a/Main/Config/Configs/RichTextMsgReplaceConfig.cs
+++ b/Main/Config/Configs/RichTextMsgReplaceConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -26,6 +26,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out id); 
 
@@ -34,5 +35,10 @@
 			int.TryParse(tables[2],out Number); 
 
 			Content = tables[3];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/RuleConfig.cs b/Main/Config/Configs/RuleConfig.cs
index 02be387..859e477 100644
--- a/Main/Config/Configs/RuleConfig.cs
+++ b/Main/Config/Configs/RuleConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -25,11 +25,17 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out ID); 
 
 			Title = tables[1];
 
 			Description = tables[2];
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/SkillConfig.cs b/Main/Config/Configs/SkillConfig.cs
index 0797c08..cdf1a43 100644
--- a/Main/Config/Configs/SkillConfig.cs
+++ b/Main/Config/Configs/SkillConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -100,6 +100,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out SkillID); 
 
@@ -256,5 +257,10 @@
 			int.TryParse(tables[76],out Skillactmark); 
 
 			int.TryParse(tables[77],out BuffDisplay); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/StoreConfig.cs b/Main/Config/Configs/StoreConfig.cs
index 17086f9..4864938 100644
--- a/Main/Config/Configs/StoreConfig.cs
+++ b/Main/Config/Configs/StoreConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -45,6 +45,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out ID); 
 
@@ -127,5 +128,10 @@
 			int.TryParse(tables[21],out RemindSuccess); 
 
 			int.TryParse(tables[22],out IsHideSellOut); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/SuccessConfig.cs b/Main/Config/Configs/SuccessConfig.cs
index 1c5f646..a55e25a 100644
--- a/Main/Config/Configs/SuccessConfig.cs
+++ b/Main/Config/Configs/SuccessConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -42,6 +42,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out ID); 
 
@@ -106,5 +107,10 @@
 			int.TryParse(tables[18],out ReOrder); 
 
 			int.TryParse(tables[19],out RealmPracticeID); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/SysInfoConfig.cs b/Main/Config/Configs/SysInfoConfig.cs
index f9a477f..6ad80e9 100644
--- a/Main/Config/Configs/SysInfoConfig.cs
+++ b/Main/Config/Configs/SysInfoConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -28,6 +28,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         key = tables[0];
 
@@ -52,5 +53,10 @@
 			richText = tables[4];
 
 			int.TryParse(tables[5],out order); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/TitleStarUpConfig.cs b/Main/Config/Configs/TitleStarUpConfig.cs
index 90f418a..abdb658 100644
--- a/Main/Config/Configs/TitleStarUpConfig.cs
+++ b/Main/Config/Configs/TitleStarUpConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -28,6 +28,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out id); 
 
@@ -64,5 +65,10 @@
 					 int.TryParse(StarAttrValueStringArray[i],out StarAttrValue[i]);
 				}
 			}
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Config/Configs/priorbundleConfig.cs b/Main/Config/Configs/priorbundleConfig.cs
index 4bd72ec..9223ecd 100644
--- a/Main/Config/Configs/priorbundleConfig.cs
+++ b/Main/Config/Configs/priorbundleConfig.cs
@@ -1,6 +1,6 @@
 锘�//--------------------------------------------------------
 //    [Author]:           YYL
-//    [  Date ]:           2025骞�5鏈�19鏃�
+//    [  Date ]:           2025骞�5鏈�22鏃�
 //--------------------------------------------------------
 
 using System.Collections.Generic;
@@ -27,6 +27,7 @@
 
     public override void LoadConfig(string input)
     {
+        try {
         string[] tables = input.Split('\t');
         int.TryParse(tables[0],out id); 
 
@@ -37,5 +38,10 @@
 			int.TryParse(tables[3],out Prior); 
 
 			int.TryParse(tables[4],out mapId); 
+        }
+        catch (Exception exception)
+        {
+            Debug.LogError(exception);
+        }
     }
 }
diff --git a/Main/Core/GameEngine/Launch/AssetBundleInitTask.cs b/Main/Core/GameEngine/Launch/AssetBundleInitTask.cs
new file mode 100644
index 0000000..3a3c9b8
--- /dev/null
+++ b/Main/Core/GameEngine/Launch/AssetBundleInitTask.cs
@@ -0,0 +1,57 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using UnityEngine;
+public class AssetBundleInitTask : LaunchTask
+{
+    public override float expectTime
+    {
+        get { return LocalSave.GetFloat("AssetBundleInitTask_ExpectTime", 1f); }
+        protected set { LocalSave.SetFloat("AssetBundleInitTask_ExpectTime", value); }
+    }
+
+    public override void Begin()
+    {
+        LaunchInHot.m_CurrentStage = LaunchStage.AssetBundleInit;
+
+        duration = Mathf.Max(0.5f, expectTime);
+        if (!AssetSource.allFromEditor)
+        {
+            AssetBundleUtility.Instance.Initialize();
+            done = false;
+            progress = 0f;
+        }
+        else
+        {
+            done = true;
+        }
+    }
+
+    public override void End()
+    {
+        expectTime = timer; 
+        //  TODO YYL
+        // UILoader.LoadWindowAsync("LaunchBackGroundWin", null);
+        Debug.LogFormat("{0}鎵ц鏃堕暱锛歿1}锛�", this.GetType().Name, timer);
+    }
+
+    public override void Update()
+    {
+        if (done)
+        {
+            return;
+        }
+
+        if (AssetBundleUtility.Instance.initialized && AssetBundleUtility.Instance.initializedUIAssetBundle)
+        {
+            done = true;
+        }
+        else
+        {
+            done = false;
+            progress = timer / duration;
+        }
+
+        ExceptionReport();
+    }
+}
\ No newline at end of file
diff --git a/Main/Core/GameEngine/Launch/AssetBundleInitTask.cs.meta b/Main/Core/GameEngine/Launch/AssetBundleInitTask.cs.meta
new file mode 100644
index 0000000..1278a0e
--- /dev/null
+++ b/Main/Core/GameEngine/Launch/AssetBundleInitTask.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 2320cb7f1ed22954582a564a864723a3
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Main/Core/GameEngine/Launch/BuiltInAssetCopyTask.cs b/Main/Core/GameEngine/Launch/BuiltInAssetCopyTask.cs
index 8a8468b..f409608 100644
--- a/Main/Core/GameEngine/Launch/BuiltInAssetCopyTask.cs
+++ b/Main/Core/GameEngine/Launch/BuiltInAssetCopyTask.cs
@@ -3,6 +3,7 @@
 using UnityEngine;
 using System.IO;
 using System;
+using Cysharp.Threading.Tasks;
 
 
 public class BuiltInAssetCopyTask : LaunchTask
@@ -36,10 +37,17 @@
 
         if (!firstLaunch)
         {
-            done = true;
+            LoadInitalConfig().Forget();
         }
     }
 
+    protected async UniTask LoadInitalConfig()
+    {
+        await ConfigManager.Instance.LoadConfigByType(typeof(InitialFunctionConfig));
+
+        done = true;
+    }
+
     public override void End()
     {
         if (!AssetSource.builtInFromEditor)
diff --git a/Main/Core/GameEngine/Launch/ConfigInitTask.cs b/Main/Core/GameEngine/Launch/ConfigInitTask.cs
new file mode 100644
index 0000000..350a21b
--- /dev/null
+++ b/Main/Core/GameEngine/Launch/ConfigInitTask.cs
@@ -0,0 +1,58 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using UnityEngine;
+public class ConfigInitTask : LaunchTask
+{
+    public override float expectTime
+    {
+        get { return LocalSave.GetFloat("ConfigInitTask_ExpectTime", 10f); }
+        protected set { LocalSave.SetFloat("ConfigInitTask_ExpectTime", value); }
+    }
+
+    float threshold = 1f;
+
+    public override void Begin()
+    {
+        LaunchInHot.m_CurrentStage = LaunchStage.ConfigInit;
+        duration = Mathf.Max(0.5f, expectTime);
+        threshold = Application.platform == RuntimePlatform.WindowsEditor ? 1f : 0.9f;
+
+        // LaunchPostProcess.Instance.Begin();
+        // InitialFunctionConfig.Init(true);   //鏈夋洿鏂板啀鍒濆鍖栦竴娆�
+    }
+
+    public override void End()
+    {
+        expectTime = timer;
+        Debug.LogFormat("{0}鎵ц鏃堕暱锛歿1}锛�", this.GetType().Name, timer);
+        
+        // TODO YYL
+        // OperationLogCollect.Instance.RecordLauchEvent(3);
+        // OperationLogCollect.Instance.RecordEvent(3);
+    }
+
+    public override void Update()
+    {
+        if (done)
+        {
+            return;
+        }
+
+        timer += Time.deltaTime;
+        // if (!ConfigInitiator.IsLoginConfigInited)\
+        // TODO YYL
+        // if (!ConfigInitiator.done)
+        // {
+        //     done = false;
+        //     progress = timer / duration;
+        // }
+        // else
+        {
+            done = true;
+        }
+
+        ExceptionReport();
+    }
+
+}
\ No newline at end of file
diff --git a/Main/Core/GameEngine/Launch/ConfigInitTask.cs.meta b/Main/Core/GameEngine/Launch/ConfigInitTask.cs.meta
new file mode 100644
index 0000000..b304a8c
--- /dev/null
+++ b/Main/Core/GameEngine/Launch/ConfigInitTask.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 925b22a08094adb43919e79f509c15a3
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Main/Core/GameEngine/Launch/DownLoadAssetTask.cs b/Main/Core/GameEngine/Launch/DownLoadAssetTask.cs
index 569ff1a..c08b850 100644
--- a/Main/Core/GameEngine/Launch/DownLoadAssetTask.cs
+++ b/Main/Core/GameEngine/Launch/DownLoadAssetTask.cs
@@ -70,208 +70,5 @@
 
 }
 
-public class AssetBundleInitTask : LaunchTask
-{
-    public override float expectTime
-    {
-        get { return LocalSave.GetFloat("AssetBundleInitTask_ExpectTime", 1f); }
-        protected set { LocalSave.SetFloat("AssetBundleInitTask_ExpectTime", value); }
-    }
-
-    public override void Begin()
-    {
-        LaunchInHot.m_CurrentStage = LaunchStage.AssetBundleInit;
-
-        duration = Mathf.Max(0.5f, expectTime);
-        if (!AssetSource.allFromEditor)
-        {
-            AssetBundleUtility.Instance.Initialize();
-            done = false;
-            progress = 0f;
-        }
-        else
-        {
-            done = true;
-        }
-    }
-
-    public override void End()
-    {
-        expectTime = timer; 
-        //  TODO YYL
-        // UILoader.LoadWindowAsync("LaunchBackGroundWin", null);
-        Debug.LogFormat("{0}鎵ц鏃堕暱锛歿1}锛�", this.GetType().Name, timer);
-    }
-
-    public override void Update()
-    {
-        if (done)
-        {
-            return;
-        }
-
-        if (AssetBundleUtility.Instance.initialized && AssetBundleUtility.Instance.initializedUIAssetBundle)
-        {
-            done = true;
-        }
-        else
-        {
-            done = false;
-            progress = timer / duration;
-        }
-
-        ExceptionReport();
-    }
-}
-
-public class ConfigInitTask : LaunchTask
-{
-    public override float expectTime
-    {
-        get { return LocalSave.GetFloat("ConfigInitTask_ExpectTime", 10f); }
-        protected set { LocalSave.SetFloat("ConfigInitTask_ExpectTime", value); }
-    }
-
-    float threshold = 1f;
-
-    public override void Begin()
-    {
-        LaunchInHot.m_CurrentStage = LaunchStage.ConfigInit;
-        duration = Mathf.Max(0.5f, expectTime);
-        threshold = Application.platform == RuntimePlatform.WindowsEditor ? 1f : 0.9f;
-
-        // LaunchPostProcess.Instance.Begin();
-        // InitialFunctionConfig.Init(true);   //鏈夋洿鏂板啀鍒濆鍖栦竴娆�
-    }
-
-    public override void End()
-    {
-        expectTime = timer;
-        Debug.LogFormat("{0}鎵ц鏃堕暱锛歿1}锛�", this.GetType().Name, timer);
-        
-        // TODO YYL
-        // OperationLogCollect.Instance.RecordLauchEvent(3);
-        // OperationLogCollect.Instance.RecordEvent(3);
-    }
-
-    public override void Update()
-    {
-        if (done)
-        {
-            return;
-        }
-
-        timer += Time.deltaTime;
-        // if (!ConfigInitiator.IsLoginConfigInited)\
-        // TODO YYL
-        // if (!ConfigInitiator.done)
-        // {
-        //     done = false;
-        //     progress = timer / duration;
-        // }
-        // else
-        {
-            done = true;
-        }
-
-        ExceptionReport();
-    }
-
-}
-
-public class LaunchFadeOutTask : LaunchTask
-{
-    public override float expectTime
-    {
-        get { return LocalSave.GetFloat("LaunchFadeOutTask_ExpectTime", 1f); }
-        protected set { LocalSave.SetFloat("LaunchFadeOutTask_ExpectTime", value); }
-    }
-
-    public override void Begin()
-    {
-        LaunchInHot.m_CurrentStage = LaunchStage.Complete;
-        duration = 0.5f;
-
-        ShaderUtility.WarmUpAll();
-        //SpeechTranslate.Instance.RequestGetToken();
-        //  TODO CYL
-        // WindowCenter.Instance.Open<LaunchBackGroundWin>(true);
-
-        // var launchWin = WindowCenter.Instance.Get<LaunchWin>();
-        // if (launchWin != null)
-        // {
-        //     launchWin.FadeOut();
-        // }
-
-        // try
-        // {
-        //     LogicLauncher.LaunchStart();
-        // }
-        // catch (Exception e)
-        // {
-        //     UnityEngine.Debug.LogError(e);
-        // }
-    }
-
-    public override void End()
-    {
-        expectTime = timer;
-        Debug.LogFormat("{0}鎵ц鏃堕暱锛歿1}锛�", this.GetType().Name, timer);
 
 
-    }
-
-    public override void Update()
-    {
-        if (done)
-        {
-            return;
-        }
-        timer += Time.deltaTime;
-
-        if (timer >= 0.5f)//&& ILLauncherProxy.Instance.started)
-        {
-            done = true;
-        }
-        else
-        {
-            done = false;
-            progress = Mathf.Clamp01(timer / expectTime);
-        }
-
-        ExceptionReport();
-    }
-
-}
-
-public class WaitTask : LaunchTask
-{
-    public WaitTask(float seconds)
-    {
-        expectTime = Mathf.Max(0.1f, seconds);
-    }
-
-    public override void Begin()
-    {
-    }
-
-    public override void End()
-    {
-    }
-
-    public override void Update()
-    {
-        timer += Time.deltaTime;
-
-        if (timer >= expectTime)
-        {
-            done = true;
-        }
-        else
-        {
-            done = false;
-            progress = Mathf.Clamp01(timer / expectTime);
-        }
-    }
-
-}
\ No newline at end of file
diff --git a/Main/Core/GameEngine/Launch/InitSettingTask.cs b/Main/Core/GameEngine/Launch/InitSettingTask.cs
index c784eaf..30f25ff 100644
--- a/Main/Core/GameEngine/Launch/InitSettingTask.cs
+++ b/Main/Core/GameEngine/Launch/InitSettingTask.cs
@@ -30,15 +30,11 @@
         //ExceptionCatcher.Init();
         //ExceptionCatcher.Catch();
 
+        //  TODO YYL 濡傛灉娌℃湁 GlobalTimeEvent鐨勮瘽闇�瑕佸湪鍦烘櫙鍔犺浇鐨勬椂鍊欏幓鍔犱竴涓�
         GlobalTimeEvent.Instance.Begin();
         PackageRegedit.Init();
         Clock.Init();
 
-        // TODO YYL
-        // if (VersionConfig.Get().appId.Equals("test"))
-        // {
-        //     SnxxzGame.Instance.gameObject.AddComponent<PocoManager>();
-        // }
         done = true;
     }
 
diff --git a/Main/Core/GameEngine/Launch/LaunchFadeOutTask.cs b/Main/Core/GameEngine/Launch/LaunchFadeOutTask.cs
new file mode 100644
index 0000000..0f71ccf
--- /dev/null
+++ b/Main/Core/GameEngine/Launch/LaunchFadeOutTask.cs
@@ -0,0 +1,78 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using UnityEngine;
+public class LaunchFadeOutTask : LaunchTask
+{
+    public override float expectTime
+    {
+        get { return LocalSave.GetFloat("LaunchFadeOutTask_ExpectTime", 1f); }
+        protected set { LocalSave.SetFloat("LaunchFadeOutTask_ExpectTime", value); }
+    }
+
+    public override void Begin()
+    {
+        LaunchInHot.m_CurrentStage = LaunchStage.Complete;
+        duration = 0.5f;
+
+        ShaderUtility.WarmUpAll();
+        //SpeechTranslate.Instance.RequestGetToken();
+        //  TODO CYL
+        // WindowCenter.Instance.Open<LaunchBackGroundWin>(true);
+
+        // var launchWin = WindowCenter.Instance.Get<LaunchWin>();
+        // if (launchWin != null)
+        // {
+        //     launchWin.FadeOut();
+        // }
+
+
+        // try
+        // {
+        //     Main.Init();//鑰冭檻绉诲埌launchcomplete 锛坙aunchinhot锛夐噷锛�
+        // }
+        // catch (Exception e)
+        // {
+        //     UnityEngine.Debug.LogError(e);
+        // }
+
+        // try
+        // {
+        //     LogicLauncher.LaunchStart();
+        // }
+        // catch (Exception e)
+        // {
+        //     UnityEngine.Debug.LogError(e);
+        // }
+    }
+
+    public override void End()
+    {
+        expectTime = timer;
+        Debug.LogFormat("{0}鎵ц鏃堕暱锛歿1}锛�", this.GetType().Name, timer);
+
+
+    }
+
+    public override void Update()
+    {
+        if (done)
+        {
+            return;
+        }
+        timer += Time.deltaTime;
+
+        if (timer >= 0.5f)//&& ILLauncherProxy.Instance.started)
+        {
+            done = true;
+        }
+        else
+        {
+            done = false;
+            progress = Mathf.Clamp01(timer / expectTime);
+        }
+
+        ExceptionReport();
+    }
+
+}
\ No newline at end of file
diff --git a/Main/Core/GameEngine/Launch/LaunchFadeOutTask.cs.meta b/Main/Core/GameEngine/Launch/LaunchFadeOutTask.cs.meta
new file mode 100644
index 0000000..7cd7121
--- /dev/null
+++ b/Main/Core/GameEngine/Launch/LaunchFadeOutTask.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: a84cde2dff108d745bbe6fd1f5bda081
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Main/Core/GameEngine/Launch/LaunchInHot.cs b/Main/Core/GameEngine/Launch/LaunchInHot.cs
index 0ccf886..0cd969d 100644
--- a/Main/Core/GameEngine/Launch/LaunchInHot.cs
+++ b/Main/Core/GameEngine/Launch/LaunchInHot.cs
@@ -23,6 +23,8 @@
         System.Net.ServicePointManager.DefaultConnectionLimit = 100;//璁剧疆http鏈�澶ц繛鎺ユ暟
         Application.backgroundLoadingPriority = ThreadPriority.High;
         Screen.sleepTimeout = SleepTimeout.NeverSleep;
+
+        InitSystemMgr();
         SDKUtils.Instance.Init();  //鍘焥dk鎺ュ彛
 
         var builtInAssetCopyTask = new BuiltInAssetCopyTask();
@@ -77,6 +79,14 @@
 
         CalculateExpectTotalTime();
 
+    }
+
+    protected void InitSystemMgr()
+    {
+        ResManager.Instance.Init();
+        UIManager.Instance.Init();
+        StageManager.Instance.Init();
+        LoginManager.Instance.Init();
     }
 
     void Update()
@@ -134,24 +144,30 @@
             }
         }
 
-        if (launchComplete)
-        {
-            UnityEngine.Debug.LogFormat("鍚姩鑰楁椂锛歿0}", timer);
-            progressInfo = new LaunchProgressInfo(m_CurrentStage, 1, 1f, 1f);
-            this.enabled = false;
+        // Debug.LogError("currentTask is null " + (currentTask == null).ToString() + " isLaunchComplete " + launchComplete.ToString());
 
-            // 鍚姩娴佺▼缁撴潫 瑕佸幓鍝噷 TODO YYL
+        // if (currentTask != null)
+        // {
+            
+            if (launchComplete)
+            {
+                UnityEngine.Debug.LogFormat("鍚姩鑰楁椂锛歿0}", timer);
+                progressInfo = new LaunchProgressInfo(m_CurrentStage, 1, 1f, 1f);
+                this.enabled = false;
 
-            // StageLoad.Instance.PushSceneLoadCommand(new StageLoad.StageLoadCommand()
-            // {
-            //     toMapId = 1,
-            //     toLineId = 0,
-            //     needEmpty = false,
-            //     needLoadResource = true,
-            //     serverType = ServerType.Main,
-            //     isClientLoadMap = true
-            // });
-        }
+                // 鍚姩娴佺▼缁撴潫 瑕佸幓鍝噷 LoginStage鐨勫鐞� TODO YYL
+                Main.Init();
+                // StageLoad.Instance.PushSceneLoadCommand(new StageLoad.StageLoadCommand()
+                // {
+                //     toMapId = 1,
+                //     toLineId = 0,
+                //     needEmpty = false,
+                //     needLoadResource = true,
+                //     serverType = ServerType.Main,
+                //     isClientLoadMap = true
+                // });
+            }
+        // }
     }
 
     public static int GetLaunchStage()
diff --git a/Main/Core/GameEngine/Launch/RequestPermissionStart.cs b/Main/Core/GameEngine/Launch/RequestPermissionStart.cs
index 009a104..f9e5dbb 100644
--- a/Main/Core/GameEngine/Launch/RequestPermissionStart.cs
+++ b/Main/Core/GameEngine/Launch/RequestPermissionStart.cs
@@ -13,8 +13,7 @@
         else
         {
             //鍏堝脊闅愮鏀跨瓥锛屽悓鎰忎箣鍚庢墠鍙互鐢宠鏉冮檺 缁х画娓告垙
-            // YYL TODO
-            // WindowCenter.Instance.OpenFromLocal<RequestSecretWin>();
+            UIManager.Instance.OpenWindow<RequestSecretWin>();
         }
     }
 
diff --git a/Main/Core/GameEngine/Launch/WaitTask.cs b/Main/Core/GameEngine/Launch/WaitTask.cs
new file mode 100644
index 0000000..09e0062
--- /dev/null
+++ b/Main/Core/GameEngine/Launch/WaitTask.cs
@@ -0,0 +1,36 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using UnityEngine;
+
+public class WaitTask : LaunchTask
+{
+    public WaitTask(float seconds)
+    {
+        expectTime = Mathf.Max(0.1f, seconds);
+    }
+
+    public override void Begin()
+    {
+    }
+
+    public override void End()
+    {
+    }
+
+    public override void Update()
+    {
+        timer += Time.deltaTime;
+
+        if (timer >= expectTime)
+        {
+            done = true;
+        }
+        else
+        {
+            done = false;
+            progress = Mathf.Clamp01(timer / expectTime);
+        }
+    }
+
+}
\ No newline at end of file
diff --git a/Main/Core/GameEngine/Launch/WaitTask.cs.meta b/Main/Core/GameEngine/Launch/WaitTask.cs.meta
new file mode 100644
index 0000000..9374036
--- /dev/null
+++ b/Main/Core/GameEngine/Launch/WaitTask.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 92c398fc849d84941b0c066dfa41ced5
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Main/Main.cs b/Main/Main.cs
index 09735ac..c2a1b44 100644
--- a/Main/Main.cs
+++ b/Main/Main.cs
@@ -19,25 +19,10 @@
     public static void Init()
     {
         Debug.Log("Main.Init() 琚皟鐢�");
-        InitSystems();
 
-        Debug.Log("鍏抽棴鍔犺浇鐣岄潰");
         LaunchLoadingWin.Instance.CloseWindow();
 
         SwitchToLoginScene();
-    }
-
-    /// <summary>
-    /// 鍒濆鍖栨父鎴忕郴缁�
-    /// </summary>
-    private static void InitSystems()
-    {
-        // 杩欓噷鍙互鍒濆鍖栧ぇ鍨嬬郴缁� 璐┛鏁翠釜娓告垙鐨勭郴缁�
-        ResManager.Instance.Init();
-        UIManager.Instance.Init();
-        StageManager.Instance.Init();
-        LoginManager.Instance.Init();
-
     }
 
     private static void SwitchToLoginScene()
diff --git a/Main/Manager/ConfigManager.cs b/Main/Manager/ConfigManager.cs
index 6e8b0cd..d50013c 100644
--- a/Main/Manager/ConfigManager.cs
+++ b/Main/Manager/ConfigManager.cs
@@ -90,7 +90,7 @@
         isLoadFinished = true;
     }
 
-    private async UniTask LoadConfigByType(Type configType)
+    public async UniTask LoadConfigByType(Type configType)
     {
         string configName = configType.Name;
         if (configName.EndsWith("Config"))
diff --git a/Main/System/ClientVersion.meta b/Main/System/ClientVersion.meta
new file mode 100644
index 0000000..164d52f
--- /dev/null
+++ b/Main/System/ClientVersion.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b2f946877be206649968d550cbeee480
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Main/System/Debug/DebugUtility.cs b/Main/System/Debug/DebugUtility.cs
index 000c3e6..1170615 100644
--- a/Main/System/Debug/DebugUtility.cs
+++ b/Main/System/Debug/DebugUtility.cs
@@ -145,10 +145,10 @@
     {
         if (debugRoot == null)
         {
-            var prefab = BuiltInLoader.LoadPrefab("UIRootDebug");
-            debugRoot = GameObject.Instantiate(prefab);
-            MonoBehaviour.DontDestroyOnLoad(debugRoot);
-            debugRoot.name = "UIRootDebug";
+            // var prefab = BuiltInLoader.LoadPrefab("UIRootDebug");
+            // debugRoot = GameObject.Instantiate(prefab);
+            // MonoBehaviour.DontDestroyOnLoad(debugRoot);
+            // debugRoot.name = "UIRootDebug";
         }
     }
 
diff --git a/Main/UI/Launch.meta b/Main/UI/Launch.meta
new file mode 100644
index 0000000..f4af743
--- /dev/null
+++ b/Main/UI/Launch.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 91e90d274ca17e84aab980cb88d23de7
+folderAsset: yes
+DefaultImporter:
+  externalObjects: {}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Main/UI/RequestSecretWin.cs b/Main/UI/RequestSecretWin.cs
new file mode 100644
index 0000000..47af4ff
--- /dev/null
+++ b/Main/UI/RequestSecretWin.cs
@@ -0,0 +1,70 @@
+锘縰sing UnityEngine;
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine.UI;
+using DG.Tweening;
+using Cysharp.Threading.Tasks;
+
+public class RequestSecretWin : UIBase
+{
+    // 缁勪欢寮曠敤
+    [SerializeField] Button m_Confirm;
+    [SerializeField] Button m_Cannel;
+    [SerializeField] Button m_Fuwu;
+    [SerializeField] Button m_Yinsi;
+
+    protected override void InitComponent()
+    {
+
+        Debug.LogError("InitComponent");
+        base.InitComponent();
+        // 鍒濆鍖栫粍浠跺紩鐢�
+        m_Confirm.SetListener(Confirm);
+        m_Cannel.SetListener(() => {
+            Debug.LogError("Cannel");
+            CloseWindow();
+#if UNITY_EDITOR
+            UnityEditor.EditorApplication.isPlaying = false;
+#else
+            Application.Quit();
+#endif
+        });
+        m_Fuwu.SetListener(()=> {
+            // TODO YYL
+            // WindowCenter.Instance.OpenFromLocal<GameAgeWarnWin>(1);
+        });
+        m_Yinsi.SetListener(() => {
+            // TODO YYL
+            // WindowCenter.Instance.OpenFromLocal<GameAgeWarnWin>(2);
+        });
+    }
+
+    // UI浜嬩欢
+    protected override void OnOpen()
+    {
+        base.OnOpen();
+        // 绐楀彛鎵撳紑鏃剁殑閫昏緫
+    }
+
+    protected override void OnClose()
+    {
+        base.OnClose();
+        // 绐楀彛鍏抽棴鏃剁殑閫昏緫
+    }
+
+    public override void Refresh()
+    {
+        base.Refresh();
+        // 鍒锋柊UI鏄剧ず
+    }
+
+    private void Confirm()
+    {
+        Debug.LogError("Confirm");
+        //鍚屾剰闅愮 骞剁敵璇锋潈闄�
+        SDKUtils.Instance.IsAgreeSecret = true;
+        LocalSave.SetBool("secretToggleStart5", true);
+        SDKUtils.Instance.RequestAndroidPermissionStart();
+        CloseWindow();
+    }
+}
diff --git a/Main/UI/RequestSecretWin.cs.meta b/Main/UI/RequestSecretWin.cs.meta
new file mode 100644
index 0000000..88d89cb
--- /dev/null
+++ b/Main/UI/RequestSecretWin.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 57d847f779aa7354fbaa2f799db238e1
+MonoImporter:
+  externalObjects: {}
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/Main/UI/UIManager.cs b/Main/UI/UIManager.cs
index f6fe0ce..9504b1d 100644
--- a/Main/UI/UIManager.cs
+++ b/Main/UI/UIManager.cs
@@ -461,7 +461,9 @@
         // uiBase.instanceID = GenerateUIInstanceID(uiName);
 
         // 璁剧疆鐖惰妭鐐逛负UI鏍硅妭鐐�
-        uiObject.transform.SetParent(GetTransForLayer(uiBase.uiLayer), false);
+        Transform parentTrans = GetTransForLayer(uiBase.uiLayer);
+
+        uiObject.transform.SetParent(parentTrans, false);
 
         // 璁剧疆鎺掑簭椤哄簭
         int baseSortingOrder = GetBaseSortingOrderForLayer(uiBase.uiLayer);

--
Gitblit v1.8.0