public override void OnInspectorGUI() { serializedObject.Update(); NetworkingStarter nwStarter = (NetworkingStarter)target; #if !hNW_UNET && !hNW_PHOTON EditorGUILayout.HelpBox("Networking Support is disabled. Check Preferences to enable it.", MessageType.Warning); #endif Inspector(); EditorGUILayout.EnumPopup("Networking Status", nwStarter.networkingStatus); if (Application.isPlaying || !nwStarter.gameObject.activeInHierarchy) { return; } GameObject humanoidPrefab = GetHumanoidNetworkingPrefab(); NetworkingComponentsInspectorUnet(humanoidPrefab); NetworkingComponentsInspectorPun(humanoidPrefab); serializedObject.ApplyModifiedProperties(); }
private void NetworkingComponentsInspectorUnet(GameObject humanoidPrefab) { #if !UNITY_2019_1_OR_NEWER && hNW_UNET NetworkManager nwManager = FindObjectOfType <NetworkManager>(); #if hNW_UNET if (nwManager == null) { NetworkingStarter nwStarter = (NetworkingStarter)target; nwManager = nwStarter.gameObject.AddComponent <NetworkManager>(); } if (nwManager.playerPrefab == null && humanoidPrefab != null) { nwManager.playerPrefab = humanoidPrefab; } #else if (nwManager != null) { cleanupNetworkManager = nwManager; } #endif #endif }
public void StartNetworking(string _roomName, int _gameVersion, GameObject _playerPrefab, int _sendRate) { networkingStarter = GetComponent <NetworkingStarter>(); roomName = _roomName; gameVersion = _gameVersion; playerPrefab = _playerPrefab; sendRate = _sendRate; #if hPHOTON2 PhotonNetwork.SendRate = sendRate; PhotonNetwork.SerializationRate = sendRate; PhotonNetwork.GameVersion = gameVersion.ToString(); PhotonNetwork.ConnectUsingSettings(); #else PhotonNetwork.sendRate = sendRate; PhotonNetwork.sendRateOnSerialize = sendRate; PhotonNetwork.ConnectUsingSettings(gameVersion.ToString()); #endif if (networkingStarter != null) { networkingStarter.networkingStatus = NetworkingStarter.NetworkingStatus.Disconnected; } }