Example #1
0
        ChildGroupNode _getChildGroupNode(IcSkillGroup skillGroup)
        {
            if (_childGroupNode)
            {
                return(_childGroupNode);
            }

            if (!skillGroup)
            {
                return(null);
            }

            if (_lastGroup == skillGroup && _childNode)
            {
                return(_childNode);
            }

            foreach (var node in skillGroup.nodes)
            {
                if (node is ChildGroupNode childGroupNode)
                {
                    _lastGroup = skillGroup;
                    _childNode = childGroupNode;
                    return(childGroupNode);
                }
            }

            return(null);
        }
Example #2
0
        protected override NPBehave.Node GetOutValue()
        {
            if (_group == null)
            {
                return(null);
            }

            GetGroup();

            _childGroupNode = _getChildGroupNode(_currentGroup);

            if (!_childGroupNode)
            {
                return(null);
            }

            _childGroupNode.GetChildGroupNode = this;

            return(_currentGroup.GetChildGroupNode((IcSkillGroup)graph));
        }