public bool BecomeNewHost(int port)
{
if (LogFilter.logDebug)
{
Debug.Log("NetworkMigrationManager BecomeNewHost " + this.m_MatchInfo);
}
NetworkServer.RegisterHandler(0x2f, new NetworkMessageDelegate(this.OnServerReconnectPlayerMessage));
NetworkClient externalClient = NetworkServer.BecomeHost(this.m_Client, port, this.m_MatchInfo, this.oldServerConnectionId, this.peers);
if (externalClient != null)
{
if (NetworkManager.singleton != null)
{
NetworkManager.singleton.RegisterServerMessages();
NetworkManager.singleton.UseExternalClient(externalClient);
}
else
{
Debug.LogWarning("MigrationManager BecomeNewHost - No NetworkManager.");
}
externalClient.RegisterHandlerSafe(11, new NetworkMessageDelegate(this.OnPeerInfo));
this.RemovePendingPlayer(this.m_OldServerConnectionId);
this.Reset(-1);
this.SendPeerInfo();
return true;
}
if (LogFilter.logError)
{
Debug.LogError("NetworkServer.BecomeHost failed");
}
return false;
}