/// <summary> /// Deep find and add of adapters to all NSTs objects in assets. Deferred actions that need to happen after a compile following library change. /// </summary> public static void TryToAddDependenciesEverywhere() { if (DependenciesHaveBeenAddedEverywhere) { return; } DebugX.Log("Adding NST Entities in all Assets"); MasterNetAdapter.AddNstEntityComponentsEverywhere(); // Now that prefabs in assets have been altered, make sure any scene objects revert to those prefabs RevertPrefabsInSceneWithComponentType <NetworkSyncTransform>(); DependenciesHaveBeenAddedEverywhere = true; }
// This should only be run very rarely. Forced to false after a library change. //public static bool dependenciesNeedToBeCheckedEverywhere; /// <summary> /// Deep find and add of adapters to all NSTs objects in assets. Deferred actions that need to happen after a compile following library change. /// </summary> public static void TryToAddDependenciesEverywhere() { if (!NetLibrarySettings.Single.dependenciesNeedToBeCheckedEverywhere) { return; } Debug.LogWarning("Added NST Entities in all Assets in entire project. Sorry if this took a while, but changing network libraries is a very brute force operation."); MasterNetAdapter.AddNstEntityComponentsEverywhere(); // Now that prefabs in assets have been altered, make sure any scene objects revert to those prefabs RevertPrefabsInSceneWithComponentType <NetworkSyncTransform>(); NetLibrarySettings.Single.dependenciesNeedToBeCheckedEverywhere = false; AssetDatabase.Refresh(); EditorUtility.SetDirty(NetLibrarySettings.single); AssetDatabase.SaveAssets(); }