|
|
@@ -17,11 +17,11 @@ e.返回出生点。
|
|
|
甚至还有人会把巡逻拆的更细,拆成a.寻找一个点 b.移动 c.等待一定时间。这都是状态机跟行为树的思维,因为状态机跟行为树可能希望移动节点可以共用。这都是增加了麻烦,不合理,不要用状态机跟行为树的思维去想行为机。行为机中,节点只是描述一种行为,并不需要共用,共用的永远是各种函数。
|
|
|
|
|
|
### 2.填充满足行为的条件
|
|
|
-我们把每个行为确定好对应的条件,一旦条件满足则会进入该行为,取消上一个行为(协程)
|
|
|
-a. 巡逻的条件:身上没有玩家目标,周围没有玩家,距离出生点 < 10米
|
|
|
-b. 选择一个玩家追击并且攻击: 周围有玩家,距离出生点 < 10米
|
|
|
-c. 返回出生点: 距离出生点 > 20米
|
|
|
-其实条件一旦列出,那么节点中的Check方法自然也就实现了
|
|
|
+我们把每个行为确定好对应的条件,一旦条件满足则会进入该行为,取消上一个行为(协程)
|
|
|
+a. 巡逻的条件:身上没有玩家目标,周围没有玩家,距离出生点 < 10米
|
|
|
+b. 选择一个玩家追击并且攻击: 周围有玩家,距离出生点 < 10米
|
|
|
+c. 返回出生点: 距离出生点 > 20米
|
|
|
+其实条件一旦列出,那么节点中的Check方法自然也就实现了
|
|
|
|
|
|
### 3.实现行为
|
|
|
a. 巡逻的伪代码:
|