Пример #1
0
        private void Build()
        {
            BehaviorTreeData bTree = _Data.Load();

            if (bTree != null)
            {
                SharedAccessKeysData[] sharedAccessKeys = new SharedAccessKeysData[_Data.SharedKeys.Length];
                for (int i = 0; i < _Data.SharedKeys.Length; i++)
                {
                    if (_Data.SharedKeys[i] != null)
                    {
                        sharedAccessKeys[i] = _Data.SharedKeys[i].Load();
                    }
                }

                bool compiled = BehaviorTreeCompiler.Compile(bTree, sharedAccessKeys);
                if (compiled)
                {
                    Builder.Build(bTree, _Data.BuildPath, _Data.name);
                }
            }
            else
            {
                Debug.LogError("Invalid SaveData");
            }
        }
Пример #2
0
        private void Rebuild()
        {
            _RefreshStyles = true;
            Clear();
            if (_Asset != null)
            {
                _BehaviorTree = _Asset.Load();
            }

            if (_BehaviorTree != null)
            {
                _Behaviors.Clear();
                foreach (var state in _BehaviorTree.States)
                {
                    AddToList(state);
                }
                if (_BehaviorTree.ExtraBehaviors != null)
                {
                    foreach (var b in _BehaviorTree.ExtraBehaviors)
                    {
                        AddToList(b);
                    }
                }

                _States.Clear();
                _States.Rebuild();
            }
        }