Переглянути джерело

disconnects when connection is not needed

Llandy Riveron Del Risco 4 місяців тому
батько
коміт
591ed7ac2b

+ 1 - 1
Assets/Scripts/Script/EnterRoom.cs

@@ -68,7 +68,7 @@ public class EnterRoom : MonoBehaviourPunCallbacks
     {
         if (CanClickEnterRoomButton() && canClick)
         {
-            PhotonNetwork.JoinRoom(RoomIDInputField.text);
+            ContinuousController.instance.StartCoroutine(JoinRoomCoroutine());
         }
     }
 

+ 2 - 0
Assets/Scripts/Script/LobbyManager_RandomMatch.cs

@@ -98,6 +98,8 @@ public class LobbyManager_RandomMatch : MonoBehaviourPunCallbacks
         yield return new WaitWhile(() => PhotonNetwork.InRoom);
         #endregion
 
+        yield return ContinuousController.instance.StartCoroutine(PhotonUtility.DisconnectCoroutine());
+
         OffLobby();
 
         yield return ContinuousController.instance.StartCoroutine(disconnectLoadingObject.EndLoading());

+ 5 - 0
Assets/Scripts/Script/RoomManager.cs

@@ -108,6 +108,11 @@ public class RoomManager : MonoBehaviourPunCallbacks
     {
         CreateRoomFailed = false;
 
+        if (!PhotonNetwork.IsConnected)
+        {
+            yield return ContinuousController.instance.StartCoroutine(PhotonUtility.ConnectToMasterServerCoroutine());
+        }
+
         yield return new WaitWhile(() => !PhotonNetwork.IsConnectedAndReady);
 
         if (!PhotonNetwork.InLobby)

+ 4 - 12
Assets/Scripts/Script/SelectBattleMode.cs

@@ -61,18 +61,10 @@ public class SelectBattleMode : MonoBehaviour
 
         Opening.instance.battle.selectBattleDeck.Off();
 
-        yield return ContinuousController.instance.StartCoroutine(loadingObject.StartLoading("Connecting"));
-
-        connecting = true;
-
-        yield return ContinuousController.instance.StartCoroutine(PhotonUtility.ConnectToLobbyCoroutine());
-
-        // ContinuousController.instance.BattleDeckData = null;
-        yield return ContinuousController.instance.StartCoroutine(PhotonUtility.DeleteBattleDeckData());
-
-        connecting = false;
-
-        yield return ContinuousController.instance.StartCoroutine(loadingObject.EndLoading());
+        if (PhotonNetwork.IsConnected)
+        {
+            yield return ContinuousController.instance.StartCoroutine(PhotonUtility.DisconnectCoroutine());
+        }
 
         this.gameObject.SetActive(true);