1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
/***************************************** The Meta Behavior Tree Library Copyright (c) 2017 David Feng Distributed under the MIT License. *****************************************/ #ifndef BTREE_HPP #define BTREE_HPP namespace mbt { btree::btree(base_node * root) : _root(root), _executing(nullptr), _status(SUCCESS) { } btree::~btree() { if (_root) { delete _root; _root = nullptr; } } void btree::_execute() { if (_status != EXECUTING) { _status = EXECUTING; _root->_execute(); } else _executing->_execute(); } void btree::_report(status s) { _status = s; } void btree::_notify(base_node * n) { _status = EXECUTING; _executing = n; } void btree::_reset() { _status = SUCCESS; _executing = nullptr; } base_node * btree::_get_root_node() const { return _root; } base_node * btree::_get_executing_node() const { return _executing; } status btree::_get_status() const { return _status; } } #endif |
Copyright © 2016-2020 Qualgame, LLC