From 10f5d614e404e97d621bb467fdc3dcd5b0a45b57 Mon Sep 17 00:00:00 2001
From: client_Wu Xijin <364452445@qq.com>
Date: 星期五, 14 十二月 2018 14:55:55 +0800
Subject: [PATCH] 5398 【前端】【1.4】跨服竞技场开发

---
 Core/NetworkPackage/GameNetSystem.cs |   49 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 49 insertions(+), 0 deletions(-)

diff --git a/Core/NetworkPackage/GameNetSystem.cs b/Core/NetworkPackage/GameNetSystem.cs
index 65b6daa..6f54a98 100644
--- a/Core/NetworkPackage/GameNetSystem.cs
+++ b/Core/NetworkPackage/GameNetSystem.cs
@@ -88,6 +88,8 @@
 
     public bool isCrossSevering { get; set; }
 
+    public CrossServerData crossServerData { get; private set; }
+
     public GameNetSystem()
     {
         var gameObject = new GameObject("NetUpdateBehaviour");
@@ -154,6 +156,11 @@
                 onConnected(ok);
             }
         });
+    }
+
+    public void UpdateCrossServerData(string ip, int port, byte state)
+    {
+        this.crossServerData = new CrossServerData(ip, port, state);
     }
 
     public void SendInfo(GameNetPackBasic protocol)
@@ -241,7 +248,27 @@
             var loginModel = ModelCenter.Instance.GetModel<LoginModel>();
             loginModel.busy = false;
         }
+    }
 
+    public void DisconnectCrossServer()
+    {
+        try
+        {
+            if (crossServerSocket != null)
+            {
+                crossServerSocket.CloseConnect();
+            }
+
+            crossSeverProtocolQueue.Clear();
+        }
+        catch (Exception ex)
+        {
+            Debug.Log(ex);
+        }
+        finally
+        {
+            CrossServerLogin.Instance.busy = false;
+        }
     }
 
     public void Reconnect()
@@ -345,4 +372,26 @@
         CrossSever = 2,
     }
 
+    public struct CrossServerData
+    {
+        public string ip;
+        public int port;
+        public CrossServerState crossState;
+
+        public CrossServerData(string ip, int port, byte state)
+        {
+            this.ip = ip;
+            this.port = port;
+            this.crossState = (CrossServerState)state;
+        }
+    }
+
+    public enum CrossServerState
+    {
+        No = 0,
+        Yes = 1,
+        Error = 2,
+    }
+
+
 }

--
Gitblit v1.8.0