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

貌似有个需求,不知现有框架如何实现

0 喜欢 0 不喜欢
88 浏览

行为树里,当我想延迟执行子节点,


比如: 玩家释放了个瞬发技能,这个技能会在2秒后生效,所以希望AI一旦检测到了玩家有个2秒后生效的技能,那么在两秒后我在执行接下来的子节点,有可能是一连串的判定+行为,有点像两秒后执行子行为树,给自己设个闹铃。

 

目前装饰节点要保证自己在被Tick,也就是要锁主 行为树 在running状态。这样的话可能需要大量修改之前行为树 变成 并行节点,来保证被锁住的时候,其他AI照常执行

 

我的想法是 做一个NodeBuffer,一个特殊的装饰节点调用它把子树缓存起来执行

可能我的对于框架的理解不够,由现有的办法不会用,请多多指点cheeky

 

最新提问 6月 30, 2016 用户: qq_57624ea828ec2 (180 分)

1个回答

0 喜欢 0 不喜欢
可以试试WaitSignal,LoopUntil或DecoratorTime
最新回答 6月 30, 2016 用户: jonygli (58,290 分)
修改于 6月 30, 2016 用户:jonygli

哦 这样的前提是 行为树保持running(以保证后面还会被tick到),这样的话可能需要使用大量并行节点,来保证其他AI照常执行,估计这么做也是可以,谢谢啦

我的想法可能是,不让行为树处于running状态,因为本来这种情况并不是一个持续的过程,而是其他事情照常,N秒后蹦回来

...