From b6bbb80d99eceb8d69087019331069f3ec9ba628 Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期六, 25 五月 2019 14:56:07 +0800
Subject: [PATCH] 3335 更新lua启动管理.

---
 Core/GameEngine/Login/Launch.cs            |    6 ++-
 Lua/LuaUtility.cs                          |   14 ------
 System/WindowBase/ModelCenter.cs           |    9 ----
 Core/GameEngine/Login/LaunchPostProcess.cs |    2 +
 Lua/CSharpCallLua.cs                       |   46 +++++++++++++++--------
 Lua/LuaLaunch.cs                           |    1 
 6 files changed, 37 insertions(+), 41 deletions(-)

diff --git a/Core/GameEngine/Login/Launch.cs b/Core/GameEngine/Login/Launch.cs
index d39295e..0ae3830 100644
--- a/Core/GameEngine/Login/Launch.cs
+++ b/Core/GameEngine/Login/Launch.cs
@@ -1138,8 +1138,10 @@
 
             try
             {
-                LuaUtility.Instance.Init();
-                CSharpCallLua.Init();
+                LuaUtility.Init();
+                CSharpCallLua.LaunchStart();
+                CSharpCallLua.RegisterLuaEvent();
+                CSharpCallLua.ConfigInit();
             }
             catch (Exception e)
             {
diff --git a/Core/GameEngine/Login/LaunchPostProcess.cs b/Core/GameEngine/Login/LaunchPostProcess.cs
index 7ade6fd..2d1eea9 100644
--- a/Core/GameEngine/Login/LaunchPostProcess.cs
+++ b/Core/GameEngine/Login/LaunchPostProcess.cs
@@ -39,6 +39,8 @@
                 MapTransferUtility.Instance.Initialize();
                 NewBieCenter.Instance.Init();
                 ClientDungeonStageUtility.Init();
+                CSharpCallLua.LaunchPostProcess();
+
                 if (Application.isMobilePlatform)
                 {
                     AssetDeCompressTask.Delete7zFiles(ResourcesPath.Instance.ExternalStorePath);
diff --git a/Lua/CSharpCallLua.cs b/Lua/CSharpCallLua.cs
index 96ade0f..6dd0d66 100644
--- a/Lua/CSharpCallLua.cs
+++ b/Lua/CSharpCallLua.cs
@@ -18,8 +18,6 @@
 
     [CSharpCallLua]
     public delegate void GeneralDelegate();
-    static GeneralDelegate configInit;
-    static GeneralDelegate modelInit;
 
     static GeneralDelegate beforePlayerDataInitialize;
     static GeneralDelegate afterPlayerDataInitialize;
@@ -35,7 +33,7 @@
     static boolReturnedValueDelegate isLuaDailyQuest;
     static boolReturnedValueDelegate gotoLuaDailyQuest;
 
-    public static void Init()
+    public static void RegisterLuaEvent()
     {
         LuaUtility.DoString("protocol.manager.LuaProtocalRegister");
         onRecieveLuaNetPackage = LuaUtility.Global.Get<LuaNetPackage>("OnRecieveNetPackage");
@@ -65,14 +63,6 @@
         LuaUtility.DoString("interface.DailyQuestInterface");
         isLuaDailyQuest = LuaUtility.Global.Get<boolReturnedValueDelegate>("IsLuaDailyQuest");
         gotoLuaDailyQuest = LuaUtility.Global.Get<boolReturnedValueDelegate>("GotoDailyQuest");
-
-        LuaUtility.DoString("config.ConfigInit");
-        configInit = LuaUtility.Global.Get<GeneralDelegate>("ConfigInit");
-        if (configInit != null)
-        {
-            configInit();
-        }
-
 
     }
 
@@ -178,13 +168,37 @@
         }
     }
 
-    public static void ModelInit()
+    public static void LaunchStart()
     {
-        LuaUtility.DoString("manager.ModelCenter");
-        modelInit = LuaUtility.Global.Get<GeneralDelegate>("ModelInit");
-        if (modelInit != null)
+        LuaUtility.DoString("manager.Launch");
+        var launchAction = LuaUtility.Global.Get<GeneralDelegate>("LaunchStart");
+        if (launchAction != null)
         {
-            modelInit();
+            launchAction();
+        }
+
+#if !UNITY_EDITOR
+        Do("hotfix.hotfix");
+#endif
+    }
+
+    public static void LaunchPostProcess()
+    {
+        LuaUtility.DoString("manager.Launch");
+        var action = LuaUtility.Global.Get<GeneralDelegate>("LaunchPostProcess");
+        if (action != null)
+        {
+            action();
+        }
+    }
+
+    public static void ConfigInit()
+    {
+        LuaUtility.DoString("config.ConfigInit");
+        var configInit = LuaUtility.Global.Get<GeneralDelegate>("ConfigInit");
+        if (configInit != null)
+        {
+            configInit();
         }
     }
 
diff --git a/Lua/LuaLaunch.cs b/Lua/LuaLaunch.cs
index e6e3457..56ebf6a 100644
--- a/Lua/LuaLaunch.cs
+++ b/Lua/LuaLaunch.cs
@@ -7,7 +7,6 @@
 
     void Awake()
     {
-        LuaUtility.Instance.Init();
     }
 
 }
diff --git a/Lua/LuaUtility.cs b/Lua/LuaUtility.cs
index 6f7f9d2..70ec96d 100644
--- a/Lua/LuaUtility.cs
+++ b/Lua/LuaUtility.cs
@@ -29,21 +29,9 @@
         get { return env.Global; }
     }
 
-    public void Init()
+    public static void Init()
     {
-        Do("global.table");
-        Do("global.util");
-        Do("global.logex");
-        Do("global.functions");
-        Do("global.object");
-        Do("global.define");
-        Do("global.stringutil");
-        Do("protocol.manager.LuaProtocalRegister");
 
-#if !UNITY_EDITOR
-        Do("hotfix.hotfix");
-#endif
-        lastGCTime = 0f;
     }
 
     void Update()
diff --git a/System/WindowBase/ModelCenter.cs b/System/WindowBase/ModelCenter.cs
index 31c74be..f8e0753 100644
--- a/System/WindowBase/ModelCenter.cs
+++ b/System/WindowBase/ModelCenter.cs
@@ -236,15 +236,6 @@
             RegisterModel<OtherPlayerEquipModel>();
             RegisterModel<TaskFeedbackModel>();
 
-            try
-            {
-                CSharpCallLua.ModelInit();
-            }
-            catch (System.Exception e)
-            {
-                DebugEx.Log(e);
-            }
-
             inited = true;
         }
 

--
Gitblit v1.8.0