Ejemplo n.º 1
0
            public static void Load(Scene scene, Ref loaderRef)
            {
                GameObjectLoader loader = SceneUtils.FindInScene <GameObjectLoader>(scene, loaderRef._loaderName);

                if (loader != null)
                {
                    loader.Load();
                }
            }
Ejemplo n.º 2
0
        public static GameObject Load(BinaryReader reader)
        {
            string typeName = reader.ReadString();

            System.Type      type   = System.Type.GetType(typeName);
            GameObjectLoader loader = (GameObjectLoader)System.Activator.CreateInstance(type);

            return(loader.Load(reader));
        }
Ejemplo n.º 3
0
            private static void LoadAdditonalAssets(SceneLoadingInfo sceneInfo)
            {
                Scene scene = sceneInfo._scene.GetScene();

                if (sceneInfo._additionalLoadingObjects != null)
                {
                    foreach (GameObjectLoader.Ref loader in sceneInfo._additionalLoadingObjects)
                    {
                        GameObjectLoader.Load(scene, loader);
                    }
                }
            }
Ejemplo n.º 4
0
                public static bool RenderLoadedNotLoadedField(GameObjectLoader loader)
                {
                    bool clear = false;

                    EditorGUILayout.BeginHorizontal();
                    {
                        EditorGUILayout.LabelField("('" + loader.name + "' not loaded)");

                        if (GUILayout.Button("Load", GUILayout.ExpandWidth(false)))
                        {
                            loader.Load();
                        }

                        clear = GUILayout.Button("Clear", GUILayout.ExpandWidth(false));
                    }
                    EditorGUILayout.EndHorizontal();

                    return(clear);
                }
            public override void OnInspectorGUI()
            {
                GameObjectLoader prefabLoader = (GameObjectLoader)target;

                EditorGUI.BeginChangeCheck();

                _prefabAsset = EditorGUILayout.ObjectField("Source Prefab", _prefabAsset, typeof(GameObject), false) as GameObject;

                if (EditorGUI.EndChangeCheck())
                {
                    if (_prefabAsset != null)
                    {
                        _filePath.stringValue = AssetDatabase.GetAssetPath(_prefabAsset);
                        _fileGUID.stringValue = AssetDatabase.AssetPathToGUID(_filePath.stringValue);
                    }
                    else
                    {
                        _filePath.stringValue = null;
                        _fileGUID.stringValue = null;
                    }

                    serializedObject.ApplyModifiedProperties();
                }

                EditorGUILayout.BeginHorizontal();
                {
                    EditorGUILayout.LabelField(GUIContent.none, GUILayout.Width(EditorGUIUtility.labelWidth - (EditorGUI.indentLevel * 15.0f) - 4.0f));

                    if (GUILayout.Button("Load"))
                    {
                        prefabLoader.Load();
                    }

                    if (GUILayout.Button("Unload"))
                    {
                        prefabLoader.Unload();
                    }

                    GUILayout.FlexibleSpace();
                }
                EditorGUILayout.EndHorizontal();
            }
 public GameObject ToGameObject()
 {
     return(GameObjectLoader.Load(GetPrefabName()));
 }