From 199bb3d2e8acb62ec82076699cd8d98a02d0591d Mon Sep 17 00:00:00 2001
From: wangguan <wangguan@kt007.com>
Date: Thu, 24 Dec 2020 11:53:10 +0800
Subject: [PATCH] Loading场景只做登录,开始游戏后跳转到LoadingScene场景 LoadingScene场景做战斗场景的加载

---
 Assets/Scripts/GameAnalytics_SDK/UI/LoginUI.cs |  109 ++++++++++++++++++++++++++++++++++--------------------
 1 files changed, 69 insertions(+), 40 deletions(-)

diff --git a/Assets/Scripts/GameAnalytics_SDK/UI/LoginUI.cs b/Assets/Scripts/GameAnalytics_SDK/UI/LoginUI.cs
index 8e577d7..dcb5521 100644
--- a/Assets/Scripts/GameAnalytics_SDK/UI/LoginUI.cs
+++ b/Assets/Scripts/GameAnalytics_SDK/UI/LoginUI.cs
@@ -15,8 +15,8 @@
     bool isLogining;
     private JsonData loginData;
 
-    private Button repairBtn;//修复
-    private Button noticeBtn;//公告
+    //private Button repairBtn;//修复
+    //private Button noticeBtn;//公告
     private Button startBtn;//开始游戏
     private Slider progressSlider;//进度条
 
@@ -37,11 +37,13 @@
     void Start()
     {
         AudioSourceManager.Ins.Play(AudioEnum.BGM1);
+
         EventCenter.Ins.RemoveAllListener();
+        TDAA_SDKManager.Ins.AddListener();
 
         isLogining = false;
 
-        repairBtn = transform.Find("Panel/RepairBtn").GetComponent<Button>();
+        //repairBtn = transform.Find("Panel/RepairBtn").GetComponent<Button>();
         startBtn = transform.Find("Panel/StartBtn").GetComponent<Button>();
 
         versionTxt = transform.Find("Panel/Version").GetComponent<Text>();
@@ -53,43 +55,41 @@
         startBtn.onClick.AddListener(OnClickLoginBtn);
         startBtn.gameObject.SetActive(true);
 
-        repairBtn.onClick.AddListener(() =>
-        {
-            OnClickResetBtn();
-        });
+        // repairBtn.onClick.AddListener(() =>
+        // {
+        //     OnClickResetBtn();
+        // });
 
         //transform.Find("Panel/Button (1)").GetComponent<Button>().onClick.AddListener(OnClickResetBtn);
 
-
-        if (Application.platform == RuntimePlatform.Android)
+        if (!GameConfig.useSDK)
         {
-            //GetetDeviceIMEI();//获取安卓手机IMEI
-            imei0 = TDAA_SDKManager.Ins.GetDeviceId();//使用设备ID
-        }
-        else if (Application.platform == RuntimePlatform.WindowsEditor)
-        {
-            imei0 = "MyTestGemBattle123";
-        }
+            if (Application.platform == RuntimePlatform.Android)
+            {
+                //GetetDeviceIMEI();//获取安卓手机IMEI
+                imei0 = TDAA_SDKManager.Ins.GetDeviceId();//使用设备ID
+            }
+            else if (Application.platform == RuntimePlatform.WindowsEditor)
+            {
+                imei0 = "MyTestGemBattle123";
+            }
 
-        GameConfig.PlayerName = imei0;
+            GameConfig.Imei = imei0;
+        }
 
         versionTxt.text = "版本号:" + Application.version;
         //resVersion.text 暂时没有使用
         transform.Find("Panel/PlayerID").GetComponent<Text>().text = "玩家ID:" + imei0;
 
-
         if (GameConfig.isFirstStart)
         {
             waitTime = 0f;
-            //第一次启动,初始化并且埋点
-            if (!GameConfig.useSDK)
-            {
-                TDAA_SDKManager.Ins.SDKInit(ChannelID.Gm.ToString());
-                TDAA_SDKManager.Ins.Statistics(1);//成功加载登陆界面的人数
-            }
+            Debug.Log("初始化TDAA_SDKManager");
+            TDAA_SDKManager.Ins.SDKInit(ChannelID.Gm.ToString());
+            TDAA_SDKManager.Ins.Statistics(1);//成功加载登陆界面的人数
         }
 
-        SetStart();
+        //SetStart();
     }
 
     /// <summary>
@@ -125,10 +125,21 @@
         AudioSourceManager.Ins.Play(AudioEnum.UI);
         TDAA_SDKManager.Ins.Statistics(2);//埋点
 
-        GameConfig.isFirstStart = false;
+        //GameConfig.isFirstStart = false;
         StartCoroutine(loginMy());
     }
 
+    /// <summary>
+    /// 使用SDK登录
+    /// </summary>
+    void SDKloginNext()
+    {
+        GameConfig.Imei = SDKManager.ins.sdk.uid;
+        Debug.Log("SDK登录,修改Imei:" + GameConfig.Imei);
+        transform.Find("Panel/PlayerID").GetComponent<Text>().text = "玩家ID:" + GameConfig.Imei;
+
+        loginNext();
+    }
 
 
     #region 获得安卓手机上的IMEI号
@@ -155,9 +166,12 @@
 
     private void OnClickResetBtn()
     {
-        Debug.LogError("清空了所有数据");
-        PlayerPrefs.DeleteAll();
-        TDAA_SDKManager.Ins.Reset();
+        if (!GameConfig.useSDK)
+        {
+            Debug.LogError("清空了所有数据");
+            PlayerPrefs.DeleteAll();
+            TDAA_SDKManager.Ins.Reset();
+        }
     }
 
 
@@ -165,23 +179,38 @@
     {
         if (!isLogining)
         {
-            // CoderM: 在这里要使用SDK来进行登录了
-            if (GameConfig.useSDK)
+            isLogining = true;
+            if (GameConfig.isFirstStart)
             {
-                //设置login的回调
-                SDKCallBack.ins.setNextAction("login", loginNext);
-                SDKManager.ins.sdk.login();
+                // CoderM: 在这里要使用SDK来进行登录了
+                if (GameConfig.useSDK)
+                {
+                    Debug.Log("使用SDK来进行登录了");
+                    //设置login的回调
+                    SDKCallBack.ins.setNextAction("login", SDKloginNext);
+                    SDKManager.ins.sdk.login();
+                }
+                else
+                {
+                    Debug.Log("没有使用SDK");
+
+                    //没有使用SDK
+                    loginNext();
+                }
             }
             else
             {
-                //没有使用SDK
-                loginNext();
+                Debug.Log("重玩");
+                progressSlider.gameObject.SetActive(true);
+                startBtn.gameObject.SetActive(false);
+
+                AudioSourceManager.Ins.Play(AudioEnum.UI);
+                TDAA_SDKManager.Ins.OnClickRestartBtn();//重玩
+                StartCoroutine(loginMy());
             }
-        }
-        else
-        {
 
         }
+
     }
 
     IEnumerator loginMy()
@@ -193,7 +222,7 @@
         yield return new WaitForSeconds(waitTime);
         int displayProgress = 0;
         int toProgress = 0;
-        AsyncOperation op = SceneManager.LoadSceneAsync("Endless2D");
+        AsyncOperation op = SceneManager.LoadSceneAsync("LoadingScene");
         // AsyncOperation op = SceneManager.LoadSceneAsync(GameConfig.NextSceneName);
         op.allowSceneActivation = false;
         while (op.progress < 0.9f) //此处如果是 <= 0.9f 则会出现死循环所以必须小0.9

--
Gitblit v1.9.1