Exemple #1
0
    void InstantiatePrimitive(E_PRIMITIVE_STATE op)
    {
        lastSnapperComponent = BlocklyPlayground.LastSnapperComponent;

        switch (op)
        {
        case E_PRIMITIVE_STATE.CUBE:
            CreatePrimitive(GameObject.CreatePrimitive(PrimitiveType.Cube), lastSnapperComponent);
            break;

        case E_PRIMITIVE_STATE.SPHERE:
            CreatePrimitive(GameObject.CreatePrimitive(PrimitiveType.Sphere), lastSnapperComponent);
            break;

        case E_PRIMITIVE_STATE.CAPSULE:
            CreatePrimitive(GameObject.CreatePrimitive(PrimitiveType.Capsule), lastSnapperComponent);
            break;

        case E_PRIMITIVE_STATE.CYLINDER:
            CreatePrimitive(GameObject.CreatePrimitive(PrimitiveType.Cylinder), lastSnapperComponent);
            break;

        case E_PRIMITIVE_STATE.PLANE:
            CreatePrimitive(GameObject.CreatePrimitive(PrimitiveType.Plane), lastSnapperComponent);
            break;

        case E_PRIMITIVE_STATE.QUAD:
            CreatePrimitive(GameObject.CreatePrimitive(PrimitiveType.Quad), lastSnapperComponent);
            break;

        default:
            Debug.LogError("Unrecognized Option");
            break;
        }
    }
Exemple #2
0
    void OnGUI()
    {
        UnityEngine.Profiling.Profiler.BeginSample("Snapper Quick Settings");
        UISystemProfilerApi.BeginSample(UISystemProfilerApi.SampleType.Render);

        EditorGUILayout.BeginHorizontal("Box", GUILayout.Height(fButtonHeight));
        #region Small Buttons
        EditorGUILayout.BeginVertical(buttonSmallWidth);
        if (GUILayout.Button((Texture)EditorGUIUtility.Load("Icons/Snapper.png")))//, "|Open Snapper Editor."))
        {
            BlocklyPlayground.OpenSnapperEditor();
        }
        // Two Buttons
        EditorGUILayout.BeginHorizontal();
        if (GUILayout.Button(EditorGUIUtility.GetBuiltinSkin(EditorSkin.Inspector).GetStyle("Icon.Activation").normal.background))
        {
            AssessmentWizard.CreateWizard();
        }

        if (GUILayout.Button(EditorGUIUtility.IconContent("LookDevSideBySide", "|Publish.")))
        {
            BlocklyPlayground.PublishTo();
        }
        EditorGUILayout.EndHorizontal();

        if (GUILayout.Button(EditorGUIUtility.IconContent("renderdoc", "|Me.")))
        {
            Debug.Log(Application.companyName);
        }
        EditorGUILayout.EndVertical();
        #endregion

        #region Big Buttons
        EditorGUILayout.BeginHorizontal();
        if (GUILayout.Button(EditorGUIUtility.IconContent("cs Script Icon", "|Save as C# Script.")))
        {
            BlocklyPlayground.SaveAsCSharp();
        }

        /*if (GUILayout.Button(EditorGUIUtility.IconContent("js Script Icon", "|Save as JS.")))
         * {
         *  BlocklyPlayground.SaveAsJavaScript();
         * }*/

        // Create primitive with our most recent Snapper script.
        EditorGUILayout.BeginVertical();
        op = (E_PRIMITIVE_STATE)EditorGUILayout.EnumPopup("Primitive to create:", op);
        EditorGUILayout.LabelField(string.Format("Last Snapper Script: \"{0}\"", BlocklyPlayground.LastSnapperComponent));

        // If we're not compiling...
        if (!EditorApplication.isCompiling)
        {
            // ... allow us to create a primitive.
            if (GUILayout.Button(EditorGUIUtility.IconContent("GameObject Icon",
                                                              "|Adds the latest Snapper script to a primitive."),
                                 GUILayout.Height(fButtonHeight - fPadding * 8f)))
            {
                InstantiatePrimitive(op);
            }
        }
        // ... We don't want to create a primitive if we're compiling.
        else
        {
            GUIStyle style = new GUIStyle();
            style.richText = true;
            EditorGUILayout.LabelField("<color=red>Compiling!</color> Please Wait.", style);
        }
        EditorGUILayout.EndVertical();
        EditorGUILayout.EndHorizontal();
        #endregion

        EditorGUILayout.EndHorizontal();

        UISystemProfilerApi.EndSample(UISystemProfilerApi.SampleType.Render);
        UnityEngine.Profiling.Profiler.EndSample();
    }