A decorator node which limits the execution of the attached child to a specified amount of runs.
More...
|
| Limit (const std::string &name, const std::string ¶meters, const ConditionPtr &condition) |
|
TreeNodeStatus | execute (const AIPtr &entity, int64_t deltaMillis) override |
|
| TreeNode (const std::string &name, const std::string ¶meters, const ConditionPtr &condition) |
|
int | getId () const |
| Return the unique id for this node. More...
|
|
const std::string & | getName () const |
| Each node can have a user defines name that can be retrieved with this method.
|
|
const std::string & | getParameters () const |
| Return the raw parameters for this node.
|
|
void | setName (const std::string &name) |
| Updates the custom name of this TreeNode . More...
|
|
const std::string & | getType () const |
| The node type - this usually matches the class name of the TreeNode .
|
|
const ConditionPtr & | getCondition () const |
|
void | setCondition (const ConditionPtr &condition) |
|
const TreeNodes & | getChildren () const |
|
TreeNodes & | getChildren () |
|
virtual void | getRunningChildren (const AIPtr &entity, std::vector< bool > &active) const |
| Get the state of all child nodes for the given entity. More...
|
|
int64_t | getLastExecMillis (const AIPtr &ai) const |
| Returns the time in milliseconds when this node was last run. This is only updated if execute() was called.
|
|
TreeNodeStatus | getLastStatus (const AIPtr &ai) const |
|
virtual void | resetState (const AIPtr &entity) |
| Reset the states in the node and also in the entity.
|
|
virtual bool | addChild (const TreeNodePtr &child) |
|
TreeNodePtr | getChild (int id) const |
|
bool | replaceChild (int id, const TreeNodePtr &newNode) |
| Replace the given child node with a new one (or removes it) More...
|
|
TreeNodePtr | getParent (const TreeNodePtr &self, int id) const |
| Get the parent node for a given TreeNode id - This should only be called on the root node of the behaviour. More...
|
|
void * | operator new (size_t size) |
|
void * | operator new (size_t, void *ptr) |
|
void * | operator new[] (size_t size) |
|
void | operator delete (void *ptr) |
|
void | operator delete (void *ptr, void *) |
|
void | operator delete[] (void *ptr) |
|
|
TreeNodeStatus | state (const AIPtr &entity, TreeNodeStatus treeNodeState) |
|
int | getSelectorState (const AIPtr &entity) const |
|
void | setSelectorState (const AIPtr &entity, int selected) |
|
int | getLimitState (const AIPtr &entity) const |
|
void | setLimitState (const AIPtr &entity, int amount) |
|
void | setLastExecMillis (const AIPtr &entity) |
|
TreeNodePtr | getParent_r (const TreeNodePtr &parent, int id) const |
|
static int | getNextId () |
|
int | _id |
| Every node has an id to identify it. It's unique per type.
|
|
TreeNodes | _children |
|
std::string | _name |
|
std::string | _type |
|
std::string | _parameters |
|
ConditionPtr | _condition |
|
A decorator node which limits the execution of the attached child to a specified amount of runs.
- Note
- If the configured amount is reached, the return
TreeNodeStatus
is TreeNodeStatus::FINISHED