예제 #1
0
        protected void DrawProjectSettings()
        {
            EditorGUILayout.LabelField("Project Settings", EditorStyles.boldLabel, GUILayout.Height(16f));
            try
            {
                GUILayout.BeginVertical(EditorHelper.Box);

                // Use the "Climb" layer at index 9 to test if the default layers have been set up.
                if (!LayersSetupHelper.LayerExistsAt("Climb", DefaultLayers.Climb))
                {
                    EditorHelper.DrawInspectorDescription("The default Motion Controller layers have not been set up.", MessageType.Warning);
                }
                EditorGUILayout.PropertyField(FindProperty(x => x.SetProjectLayers));

                if (SetProjectLayers)
                {
                    EditorGUI.indentLevel++;
                    EditorGUILayout.PropertyField(FindProperty(x => x.OverwriteExistingLayers), new GUIContent("Overwrite Existing"));
                    EditorGUI.indentLevel--;
                    GUILayout.Space(5f);
                    mLayerDefinitionsList.DoLayoutList();
                }
            }
            finally
            {
                GUILayout.EndVertical();
                EditorGUILayout.Separator();
            }
        }
예제 #2
0
        protected void SetLayers()
        {
            for (int i = 0; i < mLayerDefinitionSetsProperty.arraySize; i++)
            {
                SerializedProperty lCurrentSet = mLayerDefinitionSetsProperty.GetArrayElementAtIndex(i);
                if (lCurrentSet == null)
                {
                    continue;
                }

                LayerDefinitionSet lDefinitionSet = (LayerDefinitionSet)lCurrentSet.objectReferenceValue;
                if (lDefinitionSet == null)
                {
                    continue;
                }

                LayersSetupHelper.AddLayers(lDefinitionSet, OverwriteExistingLayers);
            }
        }
예제 #3
0
        /// <summary>
        /// Draw the project-wide settings UI (Layers, etc)
        /// </summary>
        private void DrawProjectSettings()
        {
            if (LayersSetupHelper.AreDefaultLayersSet())
            {
                return;
            }

            EditorHelper.DrawInspectorBlock("Project Settings", "", () =>
            {
                EditorHelper.DrawInspectorDescription("The default Motion Controller layers have not been set up.\n\n" +
                                                      "Press the 'Set Layers' button to add the default layer definitions.", MessageType.Warning);
                EditorGUILayout.Separator();
                EditorGUILayout.PropertyField(FindProperty(x => x.OverwriteExistingLayers));

                if (GUILayout.Button("Set Layers"))
                {
                    LayersSetupHelper.ApplyDefaultLayers(OverwriteExistingLayers);
                }
            });
        }
        private void SetupLayers(LayerDefinitionSet rLayerDefinitionSet)
        {
            LayersSetupHelper.AddLayers(rLayerDefinitionSet, mOverwriteExistingLayers.boolValue);

            EditorUtility.DisplayDialog("Layers Set Up", rLayerDefinitionSet.name + " set.", "Ok");
        }