public override void OnInspectorGUI()
        {
            base.OnInspectorGUI();

            CustomGUI.DoHorizontalLine();
            EditorGUILayout.Space();

            GUILayout.Label("Debugging", EditorStyles.boldLabel);

            if (!Application.isPlaying)
            {
                EditorGUILayout.HelpBox("Debug info will be shown at play-time!", MessageType.Info);
                return;
            }

            GUILayout.Label("Has Target: " + m_AISettings.Detection.HasTarget());
            GUILayout.Label("Has Target: " + m_AISettings.Detection.HasVisibleTarget());

            if (m_AISettings.Detection.HasTarget())
            {
                Rect rect = EditorGUILayout.GetControlRect();
                rect.x += 16f;

                GUI.Label(rect, "Target: " + m_AISettings.Detection.StillInRangeTargets[0].name);
            }
        }
Beispiel #2
0
        public override void OnInspectorGUI()
        {
            base.OnInspectorGUI();

            CustomGUI.DoHorizontalLine();
            EditorGUILayout.Space();
            EditorGUILayout.Space();

            var rect = EditorGUILayout.GetControlRect();

            rect.width *= 0.5f;

            serializedObject.Update();

            if (GUI.Button(rect, "Apply Presets"))
            {
                if (EditorUtility.DisplayDialog("Apply Presets", "Applying a preset will overwrite the current values, are you sure?", "Yes", "Cancel"))
                {
                    ApplyPresets();
                }
            }

            serializedObject.ApplyModifiedProperties();

            rect.x           = rect.xMax;
            m_SelectedPreset = (Preset)EditorGUI.EnumPopup(rect, m_SelectedPreset);
        }
        public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
        {
            var random     = property.FindPropertyRelative("m_Random");
            var customName = property.FindPropertyRelative("m_CustomName");
            var stackSize  = property.FindPropertyRelative("m_StackSize");

            //position.y += 4f;
            position.height = 16f;
            EditorGUI.PropertyField(position, random);

            position.y = position.yMax;

            GUI.enabled = !random.boolValue;

            if (!random.boolValue)
            {
                EditorGUI.PropertyField(position, customName);

                position.y = position.yMax;
                EditorGUI.PropertyField(position, stackSize);
            }
            else
            {
                EditorGUI.LabelField(position, "Custom Name: ???");

                position.y = position.yMax;
                EditorGUI.LabelField(position, "Stack Size: ???");
            }

            GUI.enabled = true;

            position.y      = position.yMax + 4f;
            position.height = 1f;
            CustomGUI.DoHorizontalLine(position);
        }
Beispiel #4
0
        public override void OnInspectorGUI()
        {
            //base.OnInspectorGUI();

            serializedObject.Update();

            if (Application.isPlaying)
            {
                GUILayout.Label("Occupied Spaces: ", EditorStyles.boldLabel);
                EditorGUILayout.Space();

                for (int i = 0; i < m_Socket.OccupiedSpaces.Count; i++)
                {
                    GUILayout.Label(m_Socket.OccupiedSpaces[i].ToString());
                }
            }

            EditorGUILayout.Space();
            EditorGUILayout.PropertyField(m_Radius);
            CustomGUI.DoHorizontalLine();
            EditorGUILayout.Space();

            GUI.color = m_EditOffset ? Color.grey : Color.white;

            if (GUILayout.Button("Edit Piece Offset"))
            {
                m_EditOffset = !m_EditOffset;

                if (!m_EditOffset)
                {
                    Tools.current = Tool.Move;
                }
            }

            GUI.color = Color.white;

            if (!serializedObject.isEditingMultipleObjects)
            {
                m_PieceOffsets.DoLayoutList();
            }

            EditorGUILayout.Space();

            serializedObject.ApplyModifiedProperties();
        }
        public override void OnInspectorGUI()
        {
            base.OnInspectorGUI();

            CustomGUI.DoHorizontalLine();
            EditorGUILayout.Space();

            GUILayout.Label("Debugging", EditorStyles.boldLabel);

            if (!Application.isPlaying)
            {
                EditorGUILayout.HelpBox("Debug info will be shown at play-time!", MessageType.Info);
                return;
            }

            string goalName = "None";

            if (m_AIBrain.CurrentGoal != null)
            {
                goalName = m_AIBrain.CurrentGoal.name;
                goalName = goalName.Remove(goalName.IndexOf("(Clone)"));
            }

            GUILayout.Label("Current Goal: " + goalName);

            GUILayout.Label("Action Queue:");

            if (m_AIBrain.ActionQueue == null)
            {
                return;
            }

            for (int i = 0; i < m_AIBrain.ActionQueue.Count; i++)
            {
                var actionName = (i + 1) + "." + m_AIBrain.ActionQueue.ToArray()[i].name;
                actionName = actionName.Remove(actionName.IndexOf("(Clone)"));

                Rect rect = EditorGUILayout.GetControlRect();
                rect.x += 16f;

                GUI.Label(rect, actionName);
            }
        }