Пример #1
0
        public override void OnInspectorGUI()
        {
            base.OnInspectorGUI();
            SO_Scene picker = target as SO_Scene;

            if (picker != null)
            {
                SceneAsset oldScene = AssetDatabase.LoadAssetAtPath <SceneAsset>(picker.Value);
                serializedObject.Update();
                EditorGUI.BeginChangeCheck();
                SceneAsset newScene = EditorGUILayout.ObjectField("scene", oldScene, typeof(SceneAsset), false) as SceneAsset;
                if (EditorGUI.EndChangeCheck())
                {
                    string             newPath           = AssetDatabase.GetAssetPath(newScene);
                    SerializedProperty scenePathProperty = serializedObject.FindProperty("m_value");
                    scenePathProperty.stringValue = newPath;
                }
            }

            serializedObject.ApplyModifiedProperties();
        }
Пример #2
0
 public void Init(SO_Scene _scene)
 {
     gameObject.name = _scene.Value;
     gameObject.transform.GetChild(0).GetComponent <Text>().text = _scene.Value.Split('/').Last().Split('.').First();
 }