# BehaviourTree

Core part of BehaviourTree.<br />
            Is used by attaching to GameObject.

![BehaviourTree](./images/BehaviourTree.png)

## Properties

<table border="1" class="docutils">
<thead>
<tr><th>Property Name</th><th>Description</th></tr>
</thead>
<tbody valign="top">
<tr>
<td>
Graph Name
</td>
<td>
The Graph name.<br />
            It is used for identification and retrieval when there is more than one Graph in one GameObject.
</td>
</tr>
<tr>
<td>
Debug Infinite Loop Settings
</td>
<td>
Debug setting of infinite loop<table border="1" class="docutils">
<thead>
<tr><th>Field Name</th><th>Description</th></tr>
</thead>
<tbody valign="top">
<tr>
<td>Max Loop Count</td>
<td>
            Maximum loop count
            </td>
</tr>
<tr>
<td>Enable Logging</td>
<td>
            Enable logging. Log output when the loop count is over maxLoopCount.
            </td>
</tr>
<tr>
<td>Enable Break</td>
<td>
            Enable Break. Debug.Break when the loop count is over maxLoopCount.
            </td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td>
Play On Start
</td>
<td>
Flag to be played at the start.
</td>
</tr>
<tr>
<td>
Restart On Finish
</td>
<td>
Flag to restart at finish.
</td>
</tr>
<tr>
<td>
Update Settings
</td>
<td>
Settings related to updating.<table border="1" class="docutils">
<thead>
<tr><th>Field Name</th><th>Description</th></tr>
</thead>
<tbody valign="top">
<tr>
<td>Type</td>
<td>
            Update type.
            <dl class="docutils">
<dt>Every Frame</dt><dd>
            Update every frame.
            </dd>
<dt>Specify Seconds</dt><dd>
            Updated by specifying seconds.
            </dd>
<dt>Manual</dt><dd>
            Update manually.<br />
            Refer to the script reference of Component for the update method.
            </dd>
</dl></td>
</tr>
<tr>
<td>Time Type</td>
<td>
            Time type(only SpecifySeconds).
            <dl class="docutils">
<dt>Normal</dt><dd>
            Use time of current frame considering timeScale.
            </dd>
<dt>Unscaled</dt><dd>
            Use time of current frame without considering timeScale.
            </dd>
<dt>Realtime</dt><dd>
            Use realtime.
            </dd>
</dl></td>
</tr>
<tr>
<td>Seconds</td>
<td>
            Update interval(only SpecifySeconds).
            </td>
</tr>
</tbody>
</table>
</td>
</tr>
<tr>
<td>
Execution Settings
</td>
<td>
Settings related to execution.<table border="1" class="docutils">
<thead>
<tr><th>Field Name</th><th>Description</th></tr>
</thead>
<tbody valign="top">
<tr>
<td>Type</td>
<td>
            Execution type
            <dl class="docutils">
<dt>Until Running</dt><dd>
            Execute all actions until TreeNodeBase.status is NodeStatus.Running.
            </dd>
<dt>Count</dt><dd>
            Specify the maximum count of actions to execute.
            </dd>
</dl></td>
</tr>
<tr>
<td>Max Count</td>
<td>
            Maximum count of the action to execute.
            </td>
</tr>
</tbody>
</table>
</td>
</tr>
 </tbody>
</table>


## Remarks

Click on the Open Editor button to open the Arbor Editor Window.

