Skip to content

Commit 3e5ba91

Browse files
committed
Returning to offline state when a transport failure occurs
1 parent cae91fa commit 3e5ba91

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

Assets/Scripts/ConnectionManagement/ConnectionManager.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,7 @@ void Start()
9696
NetworkManager.OnClientDisconnectCallback += OnClientDisconnectCallback;
9797
NetworkManager.OnServerStarted += OnServerStarted;
9898
NetworkManager.ConnectionApprovalCallback += ApprovalCheck;
99+
NetworkManager.OnTransportFailure += OnTransportFailure;
99100
}
100101

101102
void OnDestroy()
@@ -104,7 +105,7 @@ void OnDestroy()
104105
NetworkManager.OnClientDisconnectCallback -= OnClientDisconnectCallback;
105106
NetworkManager.OnServerStarted -= OnServerStarted;
106107
NetworkManager.ConnectionApprovalCallback -= ApprovalCheck;
107-
108+
NetworkManager.OnTransportFailure -= OnTransportFailure;
108109
}
109110

110111
internal void ChangeState(ConnectionState nextState)
@@ -139,6 +140,11 @@ void ApprovalCheck(NetworkManager.ConnectionApprovalRequest request, NetworkMana
139140
m_CurrentState.ApprovalCheck(request, response);
140141
}
141142

143+
void OnTransportFailure()
144+
{
145+
m_CurrentState.OnTransportFailure();
146+
}
147+
142148
public void StartClientLobby(string playerName)
143149
{
144150
m_CurrentState.StartClientLobby(playerName);

Assets/Scripts/ConnectionManagement/ConnectionState/ConnectionState.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,5 +39,10 @@ public virtual void OnUserRequestedShutdown() { }
3939
public virtual void OnDisconnectReasonReceived(ConnectStatus disconnectReason) { }
4040

4141
public virtual void ApprovalCheck(NetworkManager.ConnectionApprovalRequest request, NetworkManager.ConnectionApprovalResponse response) { }
42+
43+
public virtual void OnTransportFailure()
44+
{
45+
m_ConnectionManager.ChangeState(m_ConnectionManager.m_Offline);
46+
}
4247
}
4348
}

0 commit comments

Comments
 (0)