Beispiel #1
0
    public override void OnInspectorGUI()
    {
        BigCubeThingCreator targetScript = (BigCubeThingCreator)target;

        base.OnInspectorGUI();

        if (GUILayout.Button("Create new multicube"))
        {
            if (EditorUtility.DisplayDialog("Warning", "This will throw away all currently placed cubes under this parent. Continue?", "Continue", "Cancel"))
            {
                //Undo.RecordObjects(targetScript.SpawnedCubes.ToArray(), "Create new multicube"); // Causes issues because some spawnedcubes can be null
                targetScript.NewMulticube();
            }
        }

        if (GUILayout.Button("Combine mesh"))
        {
            //if (EditorUtility.DisplayDialog("Warning", "This will finalize your mesh. Continue?", "Continue", "Cancel"))
            targetScript.CombineMesh();
        }

        if (GUILayout.Button("Uncombine mesh"))
        {
            targetScript.CombineMeshUndo();
        }
    }
Beispiel #2
0
    public static void CreateMulticubeObject()
    {
        GameObject          addedObject = new GameObject("New Multicube");
        BigCubeThingCreator creator     = addedObject.AddComponent <BigCubeThingCreator>();

        Selection.activeObject = addedObject;
        creator.FillAllBlocks();
    }