public override void OnServerDisconnect(NetworkConnection conn) { for (int i = 0; i < conn.playerControllers.Count; ++i) { PlayerController player = conn.playerControllers[i]; if (player.gameObject != null) { JigsawPlayerController jigsawController = player.gameObject.GetComponent <JigsawPlayerController>(); if (jigsawController) { jigsawController.CleanupPlayer(); NetWorldState.DeregisterPlayer(jigsawController.PlayerState); } } } NetworkServer.DestroyPlayersForConnection(conn); if (conn.lastError != NetworkError.Ok && LogFilter.logError) { Debug.LogError("ServerDisconnected due to error: " + conn.lastError); } Debug.Log("A client disconnected from the server: " + conn); }