Behavior Tree implementation for game AI.
Usage: const tree = new BehaviorTree(blackboard); tree.setRoot(new Selector([ new Sequence([ new Condition(bb => bb.get('enemyVisible')), new Action(bb => { attack(); return NodeStatus.SUCCESS; }), ]), new Action(bb => { patrol(); return NodeStatus.RUNNING; }), ])); // Each frame: tree.tick(delta);
Behavior Tree implementation for game AI.
Usage: const tree = new BehaviorTree(blackboard); tree.setRoot(new Selector([ new Sequence([ new Condition(bb => bb.get('enemyVisible')), new Action(bb => { attack(); return NodeStatus.SUCCESS; }), ]), new Action(bb => { patrol(); return NodeStatus.RUNNING; }), ])); // Each frame: tree.tick(delta);