示例#1
0
        /// <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;
        }
示例#2
0
        // 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();
        }