Exemple #1
0
        void RecursiveTreeParsing(Branch branch, int indent, bool parentIsActive)
        {
            List <BTNode> nodes = branch.Children();

            for (int i = 0; i < nodes.Count; ++i)
            {
                EditorGUI.indentLevel = indent;

                bool isActiveChild = branch.ActiveChild() == i;
                GUI.color = (isActiveChild && parentIsActive) ? Color.green : Color.white;
                EditorGUILayout.LabelField(nodes[i].ToString(), EditorStyles.whiteLabel);

                if (nodes[i] is Branch)
                {
                    RecursiveTreeParsing(nodes[i] as Branch, indent + 1, isActiveChild);
                }
            }
        }
Exemple #2
0
        private void RecursiveTreeParsing(Branch branch, int indent, bool parentIsActive)
        {
            var nodes = branch.Children();

            for (var i = 0; i < nodes.Count; ++i)
            {
                EditorGUI.indentLevel = indent;

                var isActiveChild = branch.ActiveChild() == i;
                GUI.color = isActiveChild && parentIsActive ? Color.green : Color.white;
                EditorGUILayout.LabelField(nodes[i].ToString());

                if (nodes[i] is Branch)
                {
                    RecursiveTreeParsing(nodes[i] as Branch, indent + 1, isActiveChild);
                }
            }
        }