limboai/doc_classes/BTPlayer.xml

90 lines
4.4 KiB
XML
Raw Normal View History

2022-11-01 20:31:22 +00:00
<?xml version="1.0" encoding="UTF-8" ?>
<class name="BTPlayer" inherits="Node" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../doc/class.xsd">
2022-11-01 20:31:22 +00:00
<brief_description>
2022-11-04 12:27:09 +00:00
Player of [BehaviorTree] resources.
2022-11-01 20:31:22 +00:00
</brief_description>
<description>
2023-10-26 11:44:09 +00:00
BTPlayer node is used for the instantiation and playback of [BehaviorTree] resources at runtime. During instantiation, the behavior tree instance is initialized with a reference to the agent and the [member blackboard]. Agent is the owner of the BTPlayer node (see [member Node.owner]).
For an introduction to behavior trees, see [BehaviorTree].
2022-11-01 20:31:22 +00:00
</description>
<tutorials>
</tutorials>
<methods>
2023-04-10 14:57:36 +00:00
<method name="get_last_status" qualifiers="const">
<return type="int" />
<description>
2023-10-26 11:44:09 +00:00
Returns the behavior tree's last execution status. See [enum BT.Status].
2023-04-10 14:57:36 +00:00
</description>
</method>
<method name="get_tree_instance">
<return type="BTTask" />
<description>
Returns the root task of the instantiated behavior tree.
</description>
</method>
2022-11-01 20:31:22 +00:00
<method name="restart">
<return type="void" />
<description>
2023-10-26 11:44:09 +00:00
Resets the behavior tree's execution. Each running task will be aborted and the next tree execution will start anew. This method does not reset [Blackboard].
2022-11-01 20:31:22 +00:00
</description>
</method>
<method name="update">
<return type="void" />
<param index="0" name="delta" type="float" />
2022-11-01 20:31:22 +00:00
<description>
2023-10-26 11:44:09 +00:00
Executes the root task of the behavior tree instance if [member active] is [code]true[/code]. Call this method when [member update_mode] is set to [constant MANUAL]. When [member update_mode] is not [constant MANUAL], the [method update] will be called automatically. See [enum UpdateMode].
2022-11-01 20:31:22 +00:00
</description>
</method>
</methods>
<members>
2023-04-10 14:57:36 +00:00
<member name="active" type="bool" setter="set_active" getter="get_active" default="true">
2023-10-26 11:44:09 +00:00
If [code]true[/code], the behavior tree will be executed during update.
2022-11-01 20:31:22 +00:00
</member>
<member name="behavior_tree" type="BehaviorTree" setter="set_behavior_tree" getter="get_behavior_tree">
2023-10-26 11:44:09 +00:00
[BehaviorTree] resource to instantiate and execute at runtime.
2022-11-01 20:31:22 +00:00
</member>
2023-10-26 11:44:09 +00:00
<member name="blackboard" type="Blackboard" setter="set_blackboard" getter="get_blackboard">
Holds data shared by the behavior tree tasks. See [Blackboard].
2022-11-01 20:31:22 +00:00
</member>
2024-01-25 13:56:59 +00:00
<member name="blackboard_plan" type="BlackboardPlan" setter="set_blackboard_plan" getter="get_blackboard_plan">
Stores and manages variables that will be used in constructing new [Blackboard] instances.
</member>
2023-07-20 20:15:30 +00:00
<member name="monitor_performance" type="bool" setter="_set_monitor_performance" getter="_get_monitor_performance" default="false">
2023-10-26 11:44:09 +00:00
If [code]true[/code], adds a performance monitor to "Debugger-&gt;Monitors" for each instance of this [BTPlayer] node.
2023-07-20 20:15:30 +00:00
</member>
2022-11-01 20:31:22 +00:00
<member name="prefetch_nodepath_vars" type="bool" setter="set_prefetch_nodepath_vars" getter="get_prefetch_nodepath_vars" default="true">
2023-10-26 11:44:09 +00:00
If [code]true[/code], any [NodePath] variables in the [Blackboard] are replaced with [Node] references when the tree is instantiated. References are retrieved by calling [method Node.get_node] on the agent instance (agent is the owner of the BTPlayer node).
2022-11-01 20:31:22 +00:00
</member>
2023-04-10 14:57:36 +00:00
<member name="update_mode" type="int" setter="set_update_mode" getter="get_update_mode" enum="BTPlayer.UpdateMode" default="1">
2023-10-26 11:44:09 +00:00
Determines when the behavior tree is executed. See [enum UpdateMode].
2022-11-01 20:31:22 +00:00
</member>
</members>
<signals>
<signal name="behavior_tree_finished">
<param index="0" name="status" type="int" />
2022-11-01 20:31:22 +00:00
<description>
2023-10-26 11:44:09 +00:00
Emitted when the behavior tree has finished executing and returned [code]SUCCESS[/code] or [code]FAILURE[/code].
Argument [param status] holds the status returned by the behavior tree. See [enum BT.Status].
2022-11-01 20:31:22 +00:00
</description>
</signal>
2023-07-20 20:15:30 +00:00
<signal name="updated">
<param index="0" name="status" type="int" />
2023-07-20 20:15:30 +00:00
<description>
2023-10-26 11:44:09 +00:00
Emitted when BTPlayer has finished the behavior tree update.
Argument [param status] holds the status returned by the behavior tree. See [enum BT.Status].
2023-07-20 20:15:30 +00:00
</description>
</signal>
2022-11-01 20:31:22 +00:00
</signals>
<constants>
<constant name="IDLE" value="0" enum="UpdateMode">
2023-10-26 11:44:09 +00:00
Execute behavior tree during the idle process.
2022-11-01 20:31:22 +00:00
</constant>
<constant name="PHYSICS" value="1" enum="UpdateMode">
2023-10-26 11:44:09 +00:00
Execute behavior tree during the physics process.
2022-11-01 20:31:22 +00:00
</constant>
<constant name="MANUAL" value="2" enum="UpdateMode">
2023-10-26 11:44:09 +00:00
Behavior tree is executed manually by calling [method update].
2022-11-01 20:31:22 +00:00
</constant>
</constants>
</class>