diff --git a/src/actions/error.erl b/src/actions/bvError.erl similarity index 89% rename from src/actions/error.erl rename to src/actions/bvError.erl index 73101dc..fa13daf 100644 --- a/src/actions/error.erl +++ b/src/actions/bvError.erl @@ -1,4 +1,4 @@ --module(error). +-module(bvError). -include("eBhv3.hrl"). diff --git a/src/actions/failer.erl b/src/actions/bvFail.erl similarity index 90% rename from src/actions/failer.erl rename to src/actions/bvFail.erl index ad555e3..666b64c 100644 --- a/src/actions/failer.erl +++ b/src/actions/bvFail.erl @@ -1,4 +1,4 @@ --module(failer). +-module(bvFail). -include("eBhv3.hrl"). diff --git a/src/actions/runner.erl b/src/actions/bvRun.erl similarity index 90% rename from src/actions/runner.erl rename to src/actions/bvRun.erl index 5801fc4..414dbc2 100644 --- a/src/actions/runner.erl +++ b/src/actions/bvRun.erl @@ -1,4 +1,4 @@ --module(runner). +-module(bvRun). -include("eBhv3.hrl"). diff --git a/src/actions/succeeder.erl b/src/actions/bvSucc.erl similarity index 89% rename from src/actions/succeeder.erl rename to src/actions/bvSucc.erl index efc8a3a..32229cc 100644 --- a/src/actions/succeeder.erl +++ b/src/actions/bvSucc.erl @@ -1,4 +1,4 @@ --module(succeeder). +-module(bvSucc). -include("eBhv3.hrl"). diff --git a/src/actions/wait.erl b/src/actions/bvWait.erl similarity index 77% rename from src/actions/wait.erl rename to src/actions/bvWait.erl index 7977764..894b0e8 100644 --- a/src/actions/wait.erl +++ b/src/actions/bvWait.erl @@ -1,4 +1,4 @@ --module(wait). +-module(bvWait). -include("eBhv3.hrl"). @@ -9,11 +9,11 @@ %%-------------------------------------------------------------------- -spec open(bt_node(), bt_state()) -> bt_state(). open(#{id := ID}, BTState) -> - blackboard:set(start_time, erlang:system_time(millisecond), ID, BTState). + bvBlackBoard:set(start_time, erlang:system_time(millisecond), ID, BTState). -spec tick(bt_node(), bt_state()) -> {bt_status(), bt_state()}. tick(#{id := ID, properties := #{milliseconds := EndTime}} = _BTNode, BTState) -> - StartTime = blackboard:get(start_time, ID, BTState), + StartTime = bvBlackBoard:get(start_time, ID, BTState), case erlang:system_time(millisecond) - StartTime > EndTime of true -> {?BT_SUCCESS, BTState}; @@ -23,4 +23,4 @@ tick(#{id := ID, properties := #{milliseconds := EndTime}} = _BTNode, BTState) - -spec close(bt_node(), bt_state()) -> bt_state(). close(#{id := ID} = _BTNode, BTState) -> - blackboard:remove(start_time, ID, BTState). + bvBlackBoard:remove(start_time, ID, BTState). diff --git a/src/composites/mem_priority.erl b/src/composites/bvMemPriority.erl similarity index 53% rename from src/composites/mem_priority.erl rename to src/composites/bvMemPriority.erl index 2c2957a..b38c24d 100644 --- a/src/composites/mem_priority.erl +++ b/src/composites/bvMemPriority.erl @@ -1,4 +1,4 @@ --module(mem_priority). +-module(bvMemPriority). -include("eBhv3.hrl"). @@ -6,26 +6,26 @@ -spec open(bt_node(), bt_state()) -> bt_state(). open(#{id := ID, children := Children} = _BTNode, BTState) -> - blackboard:set(running_children, Children, ID, BTState). + bvBlackBoard:set(running_children, Children, ID, BTState). -spec tick(bt_node(), bt_state()) -> {bt_status(), bt_state()}. tick(#{id := ID} = _BTNode, BTState) -> - RunningChildren = blackboard:get(running_children, ID, BTState), - tick_1(RunningChildren, ID, BTState). + RunningChildren = bvBlackBoard:get(running_children, ID, BTState), + doTick(RunningChildren, ID, BTState). -spec close(bt_node(), bt_state()) -> bt_state(). close(#{id := ID} = _BTNode, State) -> - blackboard:remove(running_children, ID, State). + bvBlackBoard:remove(running_children, ID, State). -tick_1([ChildID | T] = Children, ID, BTState) -> - case base_node:execute(ChildID, BTState) of +doTick([ChildID | T] = Children, ID, BTState) -> + case bvBaseNode:execute(ChildID, BTState) of {?BT_FAILURE, BTState1} -> - tick_1(T, ID, BTState1); + doTick(T, ID, BTState1); {?BT_RUNNING, BTState1} -> - BTState2 = blackboard:set(running_children, Children, ID, BTState1), + BTState2 = bvBlackBoard:set(running_children, Children, ID, BTState1), {?BT_RUNNING, BTState2}; {BTStatus, BTState1} -> {BTStatus, BTState1} end; -tick_1([], _ID, BTState) -> +doTick([], _ID, BTState) -> {?BT_FAILURE, BTState}. diff --git a/src/composites/mem_sequence.erl b/src/composites/bvMemSequence.erl similarity index 53% rename from src/composites/mem_sequence.erl rename to src/composites/bvMemSequence.erl index 21b4dd0..6ad8a23 100644 --- a/src/composites/mem_sequence.erl +++ b/src/composites/bvMemSequence.erl @@ -1,4 +1,4 @@ --module(mem_sequence). +-module(bvMemSequence). -include("eBhv3.hrl"). @@ -6,26 +6,26 @@ -spec open(bt_node(), bt_state()) -> bt_state(). open(#{id := ID, children := Children} = _BTNode, BTState) -> - blackboard:set(running_children, Children, ID, BTState). + bvBlackBoard:set(running_children, Children, ID, BTState). -spec tick(bt_node(), bt_state()) -> {bt_status(), bt_state()}. tick(#{id := ID} = _BTNode, BTState) -> - RunningChildren = blackboard:get(running_children, ID, BTState), - tick_1(RunningChildren, ID, BTState). + RunningChildren = bvBlackBoard:get(running_children, ID, BTState), + doTick(RunningChildren, ID, BTState). -spec close(bt_node(), bt_state()) -> bt_state(). close(#{id := ID} = _BTNode, BTState) -> - blackboard:remove(running_children, ID, BTState). + bvBlackBoard:remove(running_children, ID, BTState). -tick_1([ChildID | T] = Children, ID, BTState) -> - case base_node:execute(ChildID, BTState) of +doTick([ChildID | T] = Children, ID, BTState) -> + case bvBaseNode:execute(ChildID, BTState) of {?BT_SUCCESS, BTState1} -> - tick_1(T, ID, BTState1); + doTick(T, ID, BTState1); {?BT_RUNNING, BTState1} -> - BTState2 = blackboard:set(running_children, Children, ID, BTState1), + BTState2 = bvBlackBoard:set(running_children, Children, ID, BTState1), {?BT_RUNNING, BTState2}; {BTStatus, BTState1} -> {BTStatus, BTState1} end; -tick_1([], _ID, BTState) -> +doTick([], _ID, BTState) -> {?BT_SUCCESS, BTState}. diff --git a/src/composites/priority.erl b/src/composites/bvPriority.erl similarity index 60% rename from src/composites/priority.erl rename to src/composites/bvPriority.erl index ffdc650..c4d9cd7 100644 --- a/src/composites/priority.erl +++ b/src/composites/bvPriority.erl @@ -1,4 +1,4 @@ --module(priority). +-module(bvPriority). -include("eBhv3.hrl"). @@ -6,14 +6,14 @@ -spec tick(bt_node(), bt_state()) -> {bt_status(), bt_state()}. tick(#{children := Children} = _BTNode, BTState) -> - tick_1(Children, BTState). + doTick(Children, BTState). -tick_1([ChildID | T], BTState) -> - case base_node:execute(ChildID, BTState) of +doTick([ChildID | T], BTState) -> + case bvBaseNode:execute(ChildID, BTState) of {?BT_FAILURE, BTState1} -> - tick_1(T, BTState1); + doTick(T, BTState1); {BTStatus, BTState1} -> {BTStatus, BTState1} end; -tick_1([], BTState) -> +doTick([], BTState) -> {?BT_FAILURE, BTState}. diff --git a/src/composites/sequence.erl b/src/composites/bvSequence.erl similarity index 60% rename from src/composites/sequence.erl rename to src/composites/bvSequence.erl index 083ce80..41d34f0 100644 --- a/src/composites/sequence.erl +++ b/src/composites/bvSequence.erl @@ -1,4 +1,4 @@ --module(sequence). +-module(bvSequence). -include("eBhv3.hrl"). @@ -6,14 +6,14 @@ -spec tick(bt_node(), bt_state()) -> {bt_status(), bt_state()}. tick(#{children := Children} = _BTNode, BTState) -> - tick_1(Children, BTState). + doTick(Children, BTState). -tick_1([ChildID | T], BTState) -> - case base_node:execute(ChildID, BTState) of +doTick([ChildID | T], BTState) -> + case bvBaseNode:execute(ChildID, BTState) of {?BT_SUCCESS, BTState1} -> - tick_1(T, BTState1); + doTick(T, BTState1); {BTStatus, BTState1} -> {BTStatus, BTState1} end; -tick_1([], BTState) -> +doTick([], BTState) -> {?BT_SUCCESS, BTState}. diff --git a/src/core/base_node.erl b/src/core/bvBaseNode.erl similarity index 81% rename from src/core/base_node.erl rename to src/core/bvBaseNode.erl index 6835c6a..f40fd0d 100644 --- a/src/core/base_node.erl +++ b/src/core/bvBaseNode.erl @@ -1,4 +1,4 @@ --module(base_node). +-module(bvBaseNode). -include("eBhv3.hrl"). @@ -30,7 +30,7 @@ %% @doc 执行节点 -spec execute(bt_uid(), bt_state()) -> {bt_status(), bt_state()}. execute(NodeID, BTState) -> - BTNode = blackboard:get_btree_node(NodeID), + BTNode = bvBlackBoard:get_btree_node(NodeID), BTState1 = do_open(BTNode, BTState), {BTStatus, BTState2} = do_tick(BTNode, BTState1), case BTStatus of @@ -64,7 +64,7 @@ do_init(ParentNodeID, BTNodeID, TreeMaps, TreeNodeMaps) -> parent_id => ParentNodeID, children => [do_init(ID, ChildBTNodeID, TreeMaps, TreeNodeMaps) || ChildBTNodeID <- Children] }, - blackboard:set_btree_node(BTNode2), + bvBlackBoard:set_btree_node(BTNode2), {ok, ID}; _ -> {error, {btree_node_not_implement, Name}} @@ -75,7 +75,7 @@ do_init(ParentNodeID, BTNodeID, TreeMaps, TreeNodeMaps) -> %% 如果树节点已经开启,则跳过 -spec do_open(bt_node(), bt_state()) -> bt_state(). do_open(#{id := ID, parent_id := ParentID, name := Mod} = BTNode, BTState) -> - case blackboard:get('$is_open', ID, false, BTState) of + case bvBlackBoard:get('$is_open', ID, false, BTState) of true -> BTState; false -> @@ -85,11 +85,11 @@ do_open(#{id := ID, parent_id := ParentID, name := Mod} = BTNode, BTState) -> false -> BTState1 = BTState end, - BTState2 = blackboard:set('$is_open', true, ID, BTState1), + BTState2 = bvBlackBoard:set('$is_open', true, ID, BTState1), case is_reference(ParentID) of true -> - Children = blackboard:get('$children', ParentID, [], BTState2), - blackboard:set('$children', [ID | Children], ParentID, BTState2); + Children = bvBlackBoard:get('$children', ParentID, [], BTState2), + bvBlackBoard:set('$children', [ID | Children], ParentID, BTState2); false -> BTState2 end @@ -104,7 +104,7 @@ do_tick(#{name := Mod} = BTNode, BTState) -> %% @doc 如果树节点有close/2函数实现,则执行close函数 -spec do_close(bt_node(), bt_state()) -> bt_state(). do_close(#{id := ID, name := Mod} = BTNode, BTState) -> - Children = blackboard:get('$children', ID, [], BTState), + Children = bvBlackBoard:get('$children', ID, [], BTState), BTState1 = do_close_1(Children, BTState), case erlang:function_exported(Mod, close, 2) of true -> @@ -112,15 +112,15 @@ do_close(#{id := ID, name := Mod} = BTNode, BTState) -> false -> BTState2 = BTState1 end, - BTState3 = blackboard:set('$is_open', false, ID, BTState2), - BTState4 = blackboard:set('$children', [], ID, BTState3), - blackboard:erase_node_local(ID, BTState4). + BTState3 = bvBlackBoard:set('$is_open', false, ID, BTState2), + BTState4 = bvBlackBoard:set('$children', [], ID, BTState3), + bvBlackBoard:erase_node_local(ID, BTState4). do_close_1([NodeID | T], BTState) -> BTState1 = do_close_1(T, BTState), - case blackboard:get('$is_open', NodeID, false, BTState1) of + case bvBlackBoard:get('$is_open', NodeID, false, BTState1) of true -> - BTNode = blackboard:get_btree_node(NodeID), + BTNode = bvBlackBoard:get_btree_node(NodeID), do_close(BTNode, BTState1); false -> BTState1 diff --git a/src/core/blackboard.erl b/src/core/bvBlackBoard.erl similarity index 99% rename from src/core/blackboard.erl rename to src/core/bvBlackBoard.erl index 6bab61e..7888e35 100644 --- a/src/core/blackboard.erl +++ b/src/core/bvBlackBoard.erl @@ -1,4 +1,4 @@ --module(blackboard). +-module(bvBlackBoard). -include("eBhv3.hrl"). diff --git a/src/decorators/inverter.erl b/src/decorators/bvInverter.erl similarity index 85% rename from src/decorators/inverter.erl rename to src/decorators/bvInverter.erl index ecb0a05..2e0d6ee 100644 --- a/src/decorators/inverter.erl +++ b/src/decorators/bvInverter.erl @@ -1,4 +1,4 @@ --module(inverter). +-module(bvInverter). -include("eBhv3.hrl"). @@ -6,7 +6,7 @@ -spec tick(bt_node(), bt_state()) -> {bt_status(), bt_state()}. tick(#{children := [ChildID]} = _BTNode, BTState) -> - case base_node:execute(ChildID, BTState) of + case bvBaseNode:execute(ChildID, BTState) of {?BT_SUCCESS, BTState1} -> {?BT_FAILURE, BTState1}; {?BT_FAILURE, BTState1} -> diff --git a/src/decorators/limiter.erl b/src/decorators/bvLimiter.erl similarity index 74% rename from src/decorators/limiter.erl rename to src/decorators/bvLimiter.erl index f337f02..48e8f83 100644 --- a/src/decorators/limiter.erl +++ b/src/decorators/bvLimiter.erl @@ -1,4 +1,4 @@ --module(limiter). +-module(bvLimiter). -include("eBhv3.hrl"). @@ -6,15 +6,15 @@ -spec open(bt_node(), bt_state()) -> bt_state(). open(#{id := ID} = _BTNode, BTState) -> - blackboard:set(i, 0, ID, BTState). + bvBlackBoard:set(i, 0, ID, BTState). -spec tick(bt_node(), bt_state()) -> {bt_status(), bt_state()}. tick(#{id := ID, children := [ChildID], properties := #{max_loop := MaxLoop}} = _BTNode, BTState) -> - case blackboard:get(i, ID, BTState) of + case bvBlackBoard:get(i, ID, BTState) of I when I < MaxLoop -> - case base_node:execute(ChildID, BTState) of + case bvBaseNode:execute(ChildID, BTState) of {BTStatus, BTState1} when BTStatus =:= ?BT_SUCCESS orelse BTStatus =:= ?BT_FAILURE -> - BTState2 = blackboard:set(i, I + 1, ID, BTState1), + BTState2 = bvBlackBoard:set(i, I + 1, ID, BTState1), {BTStatus, BTState2}; {BTStatus, BTState1} -> {BTStatus, BTState1} @@ -27,4 +27,4 @@ tick(_BTNode, BTState) -> -spec close(bt_node(), bt_state()) -> bt_state(). close(#{id := ID} = _BTNode, BTState) -> - blackboard:remove(i, ID, BTState). + bvBlackBoard:remove(i, ID, BTState). diff --git a/src/decorators/max_time.erl b/src/decorators/bvMaxTime.erl similarity index 69% rename from src/decorators/max_time.erl rename to src/decorators/bvMaxTime.erl index d3c4ff9..acfa66b 100644 --- a/src/decorators/max_time.erl +++ b/src/decorators/bvMaxTime.erl @@ -1,4 +1,4 @@ --module(max_time). +-module(bvMaxTime). -include("eBhv3.hrl"). @@ -6,12 +6,12 @@ -spec open(bt_node(), bt_state()) -> bt_state(). open(#{id := ID} = _BTNode, BTState) -> - blackboard:set(start_time, erlang:system_time(millisecond), ID, BTState). + bvBlackBoard:set(start_time, erlang:system_time(millisecond), ID, BTState). -spec tick(bt_node(), bt_state()) -> {bt_status(), bt_state()}. tick(#{id := ID, children := [ChildID], properties := #{max_time := MaxTime}} = _BTNode, BTState) -> - StartTime = blackboard:get(start_time, ID, BTState), - {BTStatus, BTState1} = base_node:execute(ChildID, BTState), + StartTime = bvBlackBoard:get(start_time, ID, BTState), + {BTStatus, BTState1} = bvBaseNode:execute(ChildID, BTState), case MaxTime > erlang:system_time(millisecond) - StartTime of true -> {BTStatus, BTState1}; @@ -23,4 +23,4 @@ tick(_BTNode, BTState) -> -spec close(bt_node(), bt_state()) -> bt_state(). close(#{id := ID} = _BTNode, BTState) -> - blackboard:remove(start_time, ID, BTState). + bvBlackBoard:remove(start_time, ID, BTState). diff --git a/src/decorators/repeat_until_failure.erl b/src/decorators/bvRUF.erl similarity index 57% rename from src/decorators/repeat_until_failure.erl rename to src/decorators/bvRUF.erl index fbd6ba2..c41fdbf 100644 --- a/src/decorators/repeat_until_failure.erl +++ b/src/decorators/bvRUF.erl @@ -1,4 +1,4 @@ --module(repeat_until_failure). +-module(bvRUF). -include("eBhv3.hrl"). @@ -6,27 +6,27 @@ -spec open(bt_node(), bt_state()) -> bt_state(). open(#{id := ID} = _BTNode, BTState) -> - blackboard:set(i, 0, ID, BTState). + bvBlackBoard:set(i, 0, ID, BTState). -spec tick(bt_node(), bt_state()) -> {bt_status(), bt_state()}. tick(#{id := ID, children := [ChildID], properties := #{max_loop := MaxLoop}} = _BTNode, BTState) -> - I = blackboard:get(i, ID, BTState), - {I1, BTStatus, BTState1} = tick_1(MaxLoop, I, ChildID, ?BT_ERROR, BTState), - BTState2 = blackboard:set(i, I1, ID, BTState1), + I = bvBlackBoard:get(i, ID, BTState), + {I1, BTStatus, BTState1} = doTick(MaxLoop, I, ChildID, ?BT_ERROR, BTState), + BTState2 = bvBlackBoard:set(i, I1, ID, BTState1), {BTStatus, BTState2}; tick(_BTNode, BTState) -> {?BT_ERROR, BTState}. -spec close(bt_node(), bt_state()) -> bt_state(). close(#{id := ID} = _BTNode, BTState) -> - blackboard:remove(i, ID, BTState). + bvBlackBoard:remove(i, ID, BTState). -tick_1(MaxLoop, I, ChildID, _BTStatus, BTState) when MaxLoop < 0 orelse I < MaxLoop -> - case base_node:execute(ChildID, BTState) of +doTick(MaxLoop, I, ChildID, _BTStatus, BTState) when MaxLoop < 0 orelse I < MaxLoop -> + case bvBaseNode:execute(ChildID, BTState) of {?BT_SUCCESS, BTState1} -> - tick_1(MaxLoop, I + 1, ChildID, ?BT_SUCCESS, BTState1); + doTick(MaxLoop, I + 1, ChildID, ?BT_SUCCESS, BTState1); {BTStatus, BTState1} -> {I, BTStatus, BTState1} end; -tick_1(_MaxLoop, I, _ChildID, BTStatus, BTState) -> +doTick(_MaxLoop, I, _ChildID, BTStatus, BTState) -> {I, BTStatus, BTState}. diff --git a/src/decorators/repeat_until_success.erl b/src/decorators/bvRUS.erl similarity index 57% rename from src/decorators/repeat_until_success.erl rename to src/decorators/bvRUS.erl index b4e9241..9d22e47 100644 --- a/src/decorators/repeat_until_success.erl +++ b/src/decorators/bvRUS.erl @@ -1,4 +1,4 @@ --module(repeat_until_success). +-module(bvRUS). -include("eBhv3.hrl"). @@ -6,27 +6,27 @@ -spec open(bt_node(), bt_state()) -> bt_state(). open(#{id := ID} = _BTNode, BTState) -> - blackboard:set(i, 0, ID, BTState). + bvBlackBoard:set(i, 0, ID, BTState). -spec tick(bt_node(), bt_state()) -> {bt_status(), bt_state()}. tick(#{id := ID, children := [ChildID], properties := #{max_loop := MaxLoop}} = _BTNode, BTState) -> - I = blackboard:get(i, ID, BTState), - {I1, BTStatus, BTState1} = tick_1(MaxLoop, I, ChildID, ?BT_ERROR, BTState), - BTState2 = blackboard:set(i, I1, ID, BTState1), + I = bvBlackBoard:get(i, ID, BTState), + {I1, BTStatus, BTState1} = doTick(MaxLoop, I, ChildID, ?BT_ERROR, BTState), + BTState2 = bvBlackBoard:set(i, I1, ID, BTState1), {BTStatus, BTState2}; tick(_BTNode, BTState) -> {?BT_ERROR, BTState}. -spec close(bt_node(), bt_state()) -> bt_state(). close(#{id := ID} = _BTNode, BTState) -> - blackboard:remove(i, ID, BTState). + bvBlackBoard:remove(i, ID, BTState). -tick_1(MaxLoop, I, ChildID, _BTStatus, BTState) when MaxLoop < 0 orelse I < MaxLoop -> - case base_node:execute(ChildID, BTState) of +doTick(MaxLoop, I, ChildID, _BTStatus, BTState) when MaxLoop < 0 orelse I < MaxLoop -> + case bvBaseNode:execute(ChildID, BTState) of {?BT_FAILURE, BTBTState1} -> - tick_1(MaxLoop, I + 1, ChildID, ?BT_FAILURE, BTBTState1); + doTick(MaxLoop, I + 1, ChildID, ?BT_FAILURE, BTBTState1); {BTStatus, BTBTState1} -> {I, BTStatus, BTBTState1} end; -tick_1(_MaxLoop, I, _ChildID, BTStatus, BTState) -> +doTick(_MaxLoop, I, _ChildID, BTStatus, BTState) -> {I, BTStatus, BTState}. diff --git a/src/decorators/repeater.erl b/src/decorators/bvRepeater.erl similarity index 57% rename from src/decorators/repeater.erl rename to src/decorators/bvRepeater.erl index 465a21d..852d721 100644 --- a/src/decorators/repeater.erl +++ b/src/decorators/bvRepeater.erl @@ -1,4 +1,4 @@ --module(repeater). +-module(bvRepeater). -include("eBhv3.hrl"). @@ -6,27 +6,27 @@ -spec open(bt_node(), bt_state()) -> bt_state(). open(#{id := ID} = _BTNode, BTState) -> - blackboard:set(i, 0, ID, BTState). + bvBlackBoard:set(i, 0, ID, BTState). -spec tick(bt_node(), bt_state()) -> {bt_status(), bt_state()}. tick(#{id := ID, children := [ChildID], properties := #{max_loop := MaxLoop}} = _BTNode, BTState) -> - I = blackboard:get(i, ID, BTState), - {I1, BTStatus, BTState1} = tick_1(MaxLoop, I, ChildID, ?BT_SUCCESS, BTState), - BTState2 = blackboard:set(i, I1, ID, BTState1), + I = bvBlackBoard:get(i, ID, BTState), + {I1, BTStatus, BTState1} = doTick(MaxLoop, I, ChildID, ?BT_SUCCESS, BTState), + BTState2 = bvBlackBoard:set(i, I1, ID, BTState1), {BTStatus, BTState2}; tick(_BTNode, BTState) -> {?BT_ERROR, BTState}. -spec close(bt_node(), bt_state()) -> bt_state(). close(#{id := ID} = _BTNode, BTState) -> - blackboard:remove(i, ID, BTState). + bvBlackBoard:remove(i, ID, BTState). -tick_1(MaxLoop, I, ChildID, _BTStatus, BTState) when MaxLoop < 0 orelse I < MaxLoop -> - case base_node:execute(ChildID, BTState) of +doTick(MaxLoop, I, ChildID, _BTStatus, BTState) when MaxLoop < 0 orelse I < MaxLoop -> + case bvBaseNode:execute(ChildID, BTState) of {BTStatus, BTState1} when BTStatus =:= ?BT_SUCCESS; BTStatus =:= ?BT_FAILURE -> - tick_1(MaxLoop, I + 1, ChildID, BTStatus, BTState1); + doTick(MaxLoop, I + 1, ChildID, BTStatus, BTState1); {BTStatus, BTState1} -> {I, BTStatus, BTState1} end; -tick_1(_MaxLoop, I, _ChildID, BTStatus, BTState) -> +doTick(_MaxLoop, I, _ChildID, BTStatus, BTState) -> {I, BTStatus, BTState}. \ No newline at end of file diff --git a/src/eBhv3.erl b/src/eBhv3.erl index 731899c..f390465 100644 --- a/src/eBhv3.erl +++ b/src/eBhv3.erl @@ -69,18 +69,18 @@ init_btree_by_title(Title, TitleMaps, TreeMaps, TreeNodeMaps) -> init_btree(BTNodeID, TreeMaps, TreeNodeMaps) -> #{root := Root} = eBhv3:get_btree(BTNodeID, TreeMaps), #{id := NodeID} = eBhv3:get_btree_node(Root, TreeNodeMaps), - base_node:do_init(undefined, NodeID, TreeMaps, TreeNodeMaps). + bvBaseNode:do_init(undefined, NodeID, TreeMaps, TreeNodeMaps). %% @doc %% 执行行为树节点 -spec execute(bt_uid(), bt_state()) -> {bt_status(), bt_state()}. execute(NodeID, BTState) -> - BTState1 = blackboard:init_maps_keys(BTState), - case base_node:execute(NodeID, BTState1) of + BTState1 = bvBlackBoard:init_maps_keys(BTState), + case bvBaseNode:execute(NodeID, BTState1) of {?BT_RUNNING, BTState2} -> {?BT_RUNNING, BTState2}; {BTStatus, BTState2} -> - BTState3 = blackboard:erase_btree(BTState2), + BTState3 = bvBlackBoard:erase_btree(BTState2), {BTStatus, BTState3} end. @@ -88,14 +88,14 @@ execute(NodeID, BTState) -> %% 动态执行子节点 -spec execute_child(bt_uid(), bt_state()) -> {bt_status(), bt_state()}. execute_child(NodeID, BTState) -> - base_node:execute(NodeID, BTState). + bvBaseNode:execute(NodeID, BTState). %% @doc %% 强制关闭指定节点下的所有子节点 -spec close_btree_node(bt_uid(), bt_state()) -> bt_state(). close_btree_node(NodeID, BTState) -> BTState1 = do_close_btree_node(NodeID, BTState), - blackboard:erase_btree(BTState1). + bvBlackBoard:erase_btree(BTState1). %% @doc %% 卸载指定节点下的所有子节点 @@ -182,15 +182,15 @@ name_convert_1(<<>>) -> %% 执行关闭行为树节点 -spec do_close_btree_node(bt_uid(), bt_state()) -> bt_state(). do_close_btree_node(NodeID, BTState) -> - BTNode = blackboard:get_btree_node(NodeID), - base_node:do_close(BTNode, BTState). + BTNode = bvBlackBoard:get_btree_node(NodeID), + bvBaseNode:do_close(BTNode, BTState). %% 执行卸载行为树节点 -spec do_unload_btree_node(bt_uid()) -> ok. do_unload_btree_node(NodeID) -> - #{children := Children} = blackboard:get_btree_node(NodeID), + #{children := Children} = bvBlackBoard:get_btree_node(NodeID), do_unload_btree_node_1(Children), - blackboard:erase_btree_node(NodeID), + bvBlackBoard:erase_btree_node(NodeID), ok. do_unload_btree_node_1([NodeID | T]) ->