| Core/GameEngine/DataToCtl/ConnectedState.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Core/GameEngine/DataToCtl/CreateOrSelectRoleState.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Core/NetworkPackage/GameNetSystem.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Core/GameEngine/DataToCtl/ConnectedState.cs
@@ -43,11 +43,13 @@ return; } if (GameNetSystem.Instance.timeSinceMainSocketLastProtocol > OVERTIME_THRESHOLD) if (GameNetSystem.Instance.timeSinceMainSocketLastProtocol > OVERTIME_THRESHOLD || (!GameNetSystem.Instance.isCrossSevering && GameNetSystem.Instance.timeSinceCrossServerSocketLastProtocol > OVERTIME_THRESHOLD)) { DetectConnected(3); } else if (!GameNetSystem.Instance.mainSocketConnected) else if (!GameNetSystem.Instance.mainSocketConnected || !GameNetSystem.Instance.crossServerSocketConnected) { DetectConnected(3); } @@ -68,9 +70,16 @@ { connectedDetecting = true; var sendInfo = new C0104_tagCOnlineReturn(); sendInfo.Type = 0; GameNetSystem.Instance.SendInfo(sendInfo);// 在线回应 var sendInfo1 = new C0104_tagCOnlineReturn(); sendInfo1.Type = 0; GameNetSystem.Instance.SendInfo(sendInfo1);// 在线回应 if (GameNetSystem.Instance.isCrossSevering) { var sendInfo2 = new C0104_tagCOnlineReturn(); sendInfo2.Type = 0; GameNetSystem.Instance.SendToCrossServer(sendInfo2);// 在线回应 } Clock.Create(DateTime.Now + new TimeSpan(_seconds * TimeSpan.TicksPerSecond), OnDetectEnd); } @@ -87,6 +96,16 @@ || GameNetSystem.Instance.timeSinceMainSocketLastProtocol > OVERTIME_THRESHOLD; #endif if (GameNetSystem.Instance.isCrossSevering) { #if UNITY_IOS && !UNITY_EDITOR isDisconnected = isDisconnected || GameNetSystem.Instance.timeSinceCrossServerSocketLastProtocol > 3f; #else isDisconnected = isDisconnected || !GameNetSystem.Instance.crossServerSocketConnected || GameNetSystem.Instance.timeSinceCrossServerSocketLastProtocol > OVERTIME_THRESHOLD; #endif } if (isDisconnected) { switch (Application.internetReachability) Core/GameEngine/DataToCtl/CreateOrSelectRoleState.cs
@@ -40,11 +40,13 @@ return; } if (GameNetSystem.Instance.timeSinceMainSocketLastProtocol > OVERTIME_THRESHOLD) if (GameNetSystem.Instance.timeSinceMainSocketLastProtocol > OVERTIME_THRESHOLD || (!GameNetSystem.Instance.isCrossSevering && GameNetSystem.Instance.timeSinceCrossServerSocketLastProtocol > OVERTIME_THRESHOLD)) { DetectConnected(3); } else if (!GameNetSystem.Instance.mainSocketConnected) else if (!GameNetSystem.Instance.mainSocketConnected || !GameNetSystem.Instance.crossServerSocketConnected) { DetectConnected(3); } @@ -69,6 +71,13 @@ sendInfo.Type = 0; GameNetSystem.Instance.SendInfo(sendInfo);// 在线回应 if (GameNetSystem.Instance.isCrossSevering) { var sendInfo2 = new C0104_tagCOnlineReturn(); sendInfo2.Type = 0; GameNetSystem.Instance.SendToCrossServer(sendInfo2);// 在线回应 } Clock.Create(DateTime.Now + new TimeSpan(_seconds * TimeSpan.TicksPerSecond), OnDetectEnd); } @@ -78,12 +87,22 @@ var isDisconnected = false; #if UNITY_IOS && !UNITY_EDITOR isDisconnected =GameNetSystem.Instance.timeSinceMainSocketLastProtocol > 3f; isDisconnected = GameNetSystem.Instance.timeSinceMainSocketLastProtocol > 3f; #else isDisconnected = !GameNetSystem.Instance.mainSocketConnected || GameNetSystem.Instance.timeSinceMainSocketLastProtocol > OVERTIME_THRESHOLD; #endif if (GameNetSystem.Instance.isCrossSevering) { #if UNITY_IOS && !UNITY_EDITOR isDisconnected = isDisconnected || GameNetSystem.Instance.timeSinceCrossServerSocketLastProtocol > 3f; #else isDisconnected = isDisconnected || !GameNetSystem.Instance.crossServerSocketConnected || GameNetSystem.Instance.timeSinceCrossServerSocketLastProtocol > OVERTIME_THRESHOLD; #endif } if (isDisconnected) { switch (Application.internetReachability) Core/NetworkPackage/GameNetSystem.cs
@@ -86,6 +86,8 @@ Queue<GameNetPackBasic> mainProtocolQueue = new Queue<GameNetPackBasic>(); Queue<GameNetPackBasic> crossSeverProtocolQueue = new Queue<GameNetPackBasic>(); public bool isCrossSevering { get; set; } public GameNetSystem() { var gameObject = new GameObject("NetUpdateBehaviour");