public static void Load(Scene scene, Ref loaderRef) { GameObjectLoader loader = SceneUtils.FindInScene <GameObjectLoader>(scene, loaderRef._loaderName); if (loader != null) { loader.Load(); } }
public static GameObject GetObject(Scene scene, int sceneObjectID) { GameObject obj = null; if (sceneObjectID != -1) { SceneIndexer indexer = SceneUtils.FindInScene <SceneIndexer>(scene); if (indexer != null) { obj = indexer.GetObject(sceneObjectID); } } return(obj); }
private static void UpdateSceneIndex(Scene scene) { //Find SceneIndexer and update its caches list SceneIndexer indexer = SceneUtils.FindInScene <SceneIndexer>(scene); //Create a new one if one doesn't exist if (indexer == null) { GameObject newObj = new GameObject("SceneIndexer"); EditorSceneManager.MoveGameObjectToScene(newObj, scene); indexer = newObj.AddComponent <SceneIndexer>(); } indexer.CacheSceneObjects(); //Hack, save string on save scene Localisation.SaveStrings(); }
private static void UpdateSceneIndex(Scene scene) { //Find SceneIndexer and update its caches list SceneIndexer indexer = SceneUtils.FindInScene <SceneIndexer>(scene); //Create a new one if one doesn't exist if (indexer == null) { GameObject gameObject = new GameObject("Scene Indexer", typeof(SceneIndexer)) { hideFlags = HideFlags.HideInHierarchy | HideFlags.HideInInspector | HideFlags.NotEditable }; SceneManager.MoveGameObjectToScene(gameObject, scene); indexer = gameObject.GetComponent <SceneIndexer>(); } indexer.CacheSceneObjects(); }