Ejemplo n.º 1
0
        void DrawActions()
        {
            GUILayout.BeginArea(ActionSection);
            buildMenuScrollPosition2 = GUILayout.BeginScrollView(buildMenuScrollPosition2);
            GUILayout.BeginVertical();


            if (_ai.actions[behaviour].actions.Length < 1)
            {
                //TODO: Tradução
                EditorGUILayout.HelpBox("No actions!", MessageType.Warning);
            }
            else
            {
                for (int i = 0; i < _ai.actions[behaviour].actions.Length; i++)
                {
                    try
                    {
                        if (i % 2 == 0)
                        {
                            EditorGUILayout.BeginVertical("box");
                        }
                        else
                        {
                            EditorGUILayout.BeginVertical(EditorStyles.helpBox);
                        }


                        _ai.actions[behaviour].actions[i].drawActionHeader(_ai.actions[behaviour].actions[i].getName(), _ai.actions[behaviour].actions[i].BtnIcon(), _ai, behaviour, i);

                        if (!_ai.actions[behaviour].actions[i].open)
                        {
                            EditorGUILayout.EndVertical();
                            continue;
                        }


                        _ai.actions[behaviour].actions[i].drawGUI(_ai, behaviour, i);
                        EditorGUILayout.Space();

                        EditorGUILayout.EndVertical();
                    }
                    catch (Exception e)
                    {
                        Debug.Log(e.Message);
                        continue;
                    }
                }
            }



            GUILayout.Space(5);
            EditorGUILayout.BeginHorizontal();

            WindowHelpers.drawLabel("Add action");
            GUILayout.FlexibleSpace();
            if (GUILayout.Button("+", GUILayout.Width(25)))
            {
                secondScreenMoment = addMoment.action;
                moment             = windowMoments.second;
            }

            EditorGUILayout.EndHorizontal();


            GUILayout.EndVertical();
            GUILayout.EndScrollView();
            GUILayout.EndArea();
        }
Ejemplo n.º 2
0
        void DrawConditions()
        {
            GUILayout.BeginArea(ConditionalSection);
            conditionsScroll = GUILayout.BeginScrollView(conditionsScroll);
            GUILayout.BeginVertical();


            if (_ai.actions[behaviour].conditions.Length < 1)
            {
                //TODO: Tradução
                EditorGUILayout.HelpBox("No conditions!", MessageType.Warning);
            }
            else
            {
                for (int i = 0; i < _ai.actions[behaviour].conditions.Length; i++)
                {
                    try
                    {
                        EditorGUILayout.BeginVertical("box");

                        _ai.actions[behaviour].conditions[i].drawConditionHeader(_ai.actions[behaviour].conditions[i].getName(), _ai.actions[behaviour].conditions[i].BtnIcon(), _ai, behaviour, i);

                        if (!_ai.actions[behaviour].conditions[i].open)
                        {
                            EditorGUILayout.EndVertical();
                            continue;
                        }

                        _ai.actions[behaviour].conditions[i].drawGUI(_ai, behaviour, i);


                        EditorGUILayout.EndVertical();

                        if (_ai.actions[behaviour].conditions.Length > 1 && i + 1 < _ai.actions[behaviour].conditions.Length)
                        {
                            EditorGUILayout.LabelField("-------- " + ((_ai.actions[behaviour].isAndGroup) ? "AND" : "OR") + " --------", secondScreenLayout.GetStyle("conditionDivision"), new GUILayoutOption[] { GUILayout.Height(8) });
                        }
                    }
                    catch (Exception e)
                    {
                        Debug.Log(e.Message);
                        continue;
                    }
                }
            }


            GUILayout.Space(5);
            EditorGUILayout.BeginHorizontal();

            WindowHelpers.drawLabel("Add condition");
            GUILayout.FlexibleSpace();
            if (GUILayout.Button("+", GUILayout.Width(25)))
            {
                secondScreenMoment = addMoment.condition;
                moment             = windowMoments.second;
            }

            EditorGUILayout.EndHorizontal();


            GUILayout.EndVertical();
            GUILayout.EndScrollView();
            GUILayout.EndArea();
        }