Skip to content

1681-engine / index / BtAgent

Class: BtAgent<C> ​

Defined in: src/ai/behaviorTree.ts:51

One agent running a tree: its memory, and the tick that drives it.

Type Parameters ​

Type Parameter
C

Implements ​

Constructors ​

Constructor ​

ts
new BtAgent<C>(root): BtAgent<C>;

Defined in: src/ai/behaviorTree.ts:60

Parameters ​

ParameterType
rootBtNode<C>

Returns ​

BtAgent<C>

Properties ​

now ​

ts
now: number = 0;

Defined in: src/ai/behaviorTree.ts:52

The time this tick was given (ms), for waits, cooldowns and timeouts.

Implementation of ​

BtRun.now


root ​

ts
readonly root: BtNode<C>;

Defined in: src/ai/behaviorTree.ts:60

Methods ​

halt() ​

ts
halt(child, ctx): void;

Defined in: src/ai/behaviorTree.ts:107

Stops a child that was left running, and everything under it.

Parameters ​

ParameterType
childBtNode<C>
ctxC

Returns ​

void

Implementation of ​

BtRun.halt


isRunning() ​

ts
isRunning(node): boolean;

Defined in: src/ai/behaviorTree.ts:81

Whether a node is running for this agent now.

Parameters ​

ParameterType
nodeBtNode<C>

Returns ​

boolean


lasting() ​

ts
lasting<T>(node, init): T;

Defined in: src/ai/behaviorTree.ts:90

Memory that outlives the node finishing (a cooldown's ready time); only reset clears it.

Type Parameters ​

Type Parameter
T

Parameters ​

ParameterType
nodeBtNode<C>
init() => T

Returns ​

T

Implementation of ​

BtRun.lasting


reset() ​

ts
reset(ctx): void;

Defined in: src/ai/behaviorTree.ts:72

Halts whatever is running and forgets all memory: the agent starts the tree afresh (it died, it was stunned).

Parameters ​

ParameterType
ctxC

Returns ​

void


state() ​

ts
state<T>(node, init): T;

Defined in: src/ai/behaviorTree.ts:85

This node's memory for this agent, made by init the first time and after a halt.

Type Parameters ​

Type Parameter
T

Parameters ​

ParameterType
nodeBtNode<C>
init() => T

Returns ​

T

Implementation of ​

BtRun.state


tick() ​

ts
tick(child, ctx): BtStatus;

Defined in: src/ai/behaviorTree.ts:95

Ticks a child; use this, never child.tick, so it is traced and halted right.

Parameters ​

ParameterType
childBtNode<C>
ctxC

Returns ​

BtStatus

Implementation of ​

BtRun.tick


trace() ​

ts
trace(): BtTraceLine[];

Defined in: src/ai/behaviorTree.ts:116

The tree as it ran on the last tick, depth first: for a debug overlay.

Returns ​

BtTraceLine[]


update() ​

ts
update(ctx, now): BtStatus;

Defined in: src/ai/behaviorTree.ts:63

Ticks the tree once at time now (ms) and returns the root's answer.

Parameters ​

ParameterType
ctxC
nownumber

Returns ​

BtStatus

Released under the MIT License.