// TODO this is redudant with NSTNetAdapter code for UNET public static void CopyPlayerPrefabFromPUNtoOthers() { PUNSampleLauncher punl = PUNSampleLauncher.Single; if (!punl || punl.playerPrefab == null) { return; } NSTNetAdapter.AddAsRegisteredPrefab(punl.playerPrefab, true); //// Copy player prefab from PUN launcher to NM //if (MasterNetAdapter.NetLib == NetworkLibrary.UNET) // NSTNetAdapter.AddAsRegisteredPrefab(punl.playerPrefab, true); //// Copy PUN playerPrefab to UNET //NetworkManager nm = GetNetworkManager(MasterNetAdapter.NetLib == NetworkLibrary.UNET); //if (nm && !nm.playerPrefab) //{ // Debug.Log("Copying Player Prefab : <b>'" + punl.playerPrefab.name + "'</b> from " + punl.GetType().Name + " to NetworkManager for you."); // NetworkIdentity ni = punl.playerPrefab.GetComponent<NetworkIdentity>(); // if (!ni) // ni = punl.playerPrefab.AddComponent<NetworkIdentity>(); // // This seemingly pointless code forces the NI to initialize the assetid. For some dumb reason UNET. // ni.assetId.IsValid(); // if (nm.playerPrefab != punl.playerPrefab) // { // nm.playerPrefab = punl.playerPrefab; // EditorSceneManager.MarkSceneDirty(EditorSceneManager.GetActiveScene()); // } //} }
public static void CopyPlayerPrefabFromUNETtoOthers() { NetworkManager nm = GetNetworkManager(); if (!nm || nm.playerPrefab == null) { return; } PUNSampleLauncher punl = PUNSampleLauncher.Single; if (punl && !punl.playerPrefab) { Debug.Log("Copying Player Prefab : <b>'" + nm.playerPrefab.name + "'</b> from NetworkManager to " + punl.GetType().Name + " for you."); punl.playerPrefab = nm.playerPrefab; } }