Example #1
0
 void InitializePrefabData()
 {
     Debug.Log("New prefab constraint data asset");
     // Create asset, save empty one and refresh database to show it to the user
     prefabConstraint = ScriptableObject.CreateInstance <LevelPrefabList>();
     AssetDatabase.CreateAsset(prefabConstraint, "Assets/prefabs.asset");
     AssetDatabase.SaveAssets();
     AssetDatabase.Refresh();
 }
Example #2
0
    private void OnGUI()
    {
        prefabConstraint = (LevelPrefabList)EditorGUILayout.ObjectField(prefabConstraint, typeof(LevelPrefabList), false);
        if (GUILayout.Button("Recreate"))
        {
            CreateObjectsFromData();
        }
        paint = EditorGUILayout.Toggle(new GUIContent("Paint"), paint);

        GUILayout.Label(new GUIContent("Prefab #" + prefabIndex, AssetPreview.GetAssetPreview(prefabConstraint.prefabDataList[prefabIndex].prefabList[0])));
        GUILayout.Label("Rotation " + prefabConstraint.rotationList[rotationIndex]);
    }
Example #3
0
 void OnEnable()
 {
     SceneView.duringSceneGui += this.OnSceneGUI;
     EditorSceneManager.activeSceneChangedInEditMode += RefreshObjectFromScene;
     levelData = AssetDatabase.LoadAssetAtPath <LevelData>("Assets/level.asset");
     if (levelData == null)
     {
         InitializeData();
     }
     prefabConstraint = AssetDatabase.LoadAssetAtPath <LevelPrefabList>("Assets/prefabs.asset");
     if (prefabConstraint == null)
     {
         InitializePrefabData();
     }
     CreateObjectsFromData();
 }