I’m using NetworkLobbyManager (with DontDestroyOnLoad checked) in a Menu scene. When the game starts, I call NetworkManager.ServerSceneChange() and the new scene is loaded by the clients. However, message handlers that had worked before no longer work on the client. The NetworkLobbyManager is there, but the handlers don’t work. Here is my client-side join game code:
public void joinGame(int p_iGame)
{
NetworkManager.singleton.matchMaker.JoinMatch(_matches[p_iGame].MatchInfo.networkId, "", "", "", 0, NetworkConstants.NET_VERSION, onMatchJoined);
}
private void onMatchJoined(bool success, string extendedInfo, MatchInfo responseData)
{
NetworkManager.singleton.StartClient(responseData);
NetworkManager.singleton.client.RegisterHandler(1002, MenuManager.Instance.onReceiveGameMetaData);
}
While in the Menu scene, this works and correctly calls onReceiveGameMetaData().
I use NetworkManager.ServerSceneChange() to load the game scene, and then when I use NetworkServer.SendToAll(1002, msg), I get:
Unknown message ID 1002 connId:1
on the client. Do these handlers not survive the scene change? I’ve also tried registering them after the scene change, but that also yields the same result. Any help would be appreciated. Network messages are an important part of the project I’m working on. Thank you!