• 注册
欢迎加入behaviac Q&A网站。behaviac是腾讯开源组件https://github.com/TencentOpen/behaviac 官方网站:http://www.behaviac.com/,提供各种文档和教程及手册 为了您及时的获得您最新问题的评论或者回答,请提供并验证您的邮箱
欢迎来到 behaviac Q&A。 您在bbs里的问题,管理员会当下就收到通知,不要担心管理员看不到您的问题。也请在bbs里提供您的email,这样就可以第一时间收到关于回答,评论的email的通知了。 为了节省大家的时间,请表达好你的问题,提供必要上下文,版本号,平台信息,重现步骤等。

一个操作组合只要不是失败这个组合的状态就被认为是成功该怎么办

0 喜欢 0 不喜欢
4,013 浏览

比如我现在有个怪物行为:如果怪物没有被攻击,就处于游走状态,怪物如果被攻击了,怪物就进行普通攻击,然后等待数秒,重复进行普通攻击。我是用一个大的选择节点组合了怪物攻击序列,和游走序列。现在的情况是,怪物边攻击边游走。原因就是因为等待的时候节点点状态是running。

最新提问 3月 17, 2016 用户: zy735310102 (500 分)
标签修改 3月 17, 2016 用户:quinnpan

3 个回答

1 喜欢 0 不喜欢
 
已采纳
可以看看"选择监测"节点,更符合你要的需求。
最新回答 3月 17, 2016 用户: cainhuang (33,810 分)
采纳于 3月 18, 2016 用户:jonygli
恩,好的,我看下
0 喜欢 0 不喜欢

image

 

没有对你的行为树进行优化的情况下,可以用PreAction节点(前置节点)。右键->新标签页打开图片  可以看大图

最新回答 3月 17, 2016 用户: quinnpan (12,640 分)
修改于 3月 18, 2016 用户:jonygli
可能我举得例子不是很恰当。其实现在出现的问题是这样的,判断到怪物被攻击以后,进入下面的选择节点。然后执行普通攻击那个序列。如果执行普通攻击失败,就进行下面的选择,执行追击序列,问题就是在这里,我想追击的时候每个350毫秒,检测一下是否可以继续进行追击。但是这样会导致该序列返回running。然后执行下面的尝试切换目标组合。其实如果执行了追击序列,我希望不要执行下面的切换目标操作。如何优化在追击的时候进行每350毫秒检测是否可以进行继续追击。
0 喜欢 0 不喜欢
如果等待中应该是running。不会执行游走的。等待running状态过后才会执行其他逻辑了。你刚刚说的一边攻击,一边游走,不是等待为running造成的?
最新回答 3月 17, 2016 用户: quinnpan (12,640 分)
修改于 3月 17, 2016 用户:quinnpan
...