首先在状态机里新建一个lock的布尔值和lock的状态。
改完之后还得把转态时间改成0。
然后下一步我们要测这个lock和导演模块的自定义导轨的关联,先在脚本ActorManager里新建一个函数。
然后在playable behaviour里修改成这样。
最后是这样,可以从导演模块里找到是哪个ActorManager绑定了这个自定义模块。
找到了ActorManager之后,就可以把这里的Debug改成赋值ActorManager的代码。
如此一来,我们就可以通过导演模块里的自定义导轨去调用ActorManager脚本里的函数了。
下一步就是通过这里抓取ActorManager绑定的代码,可以开启状态机里的lock状态,当开始了导演模块时,锁定模型状态就不会受攻击动作影响扣血。
先在ActorController脚本里新增一个SetBool的函数。
然后在ActorManager脚本里新增一个开关Lock状态的函数。
将Playable Behaviour脚本的 TestEcho函数改成这里的Lock函数。
然后为了代码简约,把变量pd放到外面声明,给Stop函数也复制同样一块代码来抓取lock动作的取消。
同样,我们也要给敌人也放入lock锁定。创建一个新的自定义导轨,放入敌人的ActorManager。
然后在Playable Behaviour脚本里修改:
后面这个是新的自定义导轨的名字。
设定完成之后,执行导演动画时,两个模型都会锁定当前的状态,转变成导演动作的状态,直到结束才会恢复。所以不会出现执行导演动画后,主角因为在动画执行过程中受攻击。结束之后会马上死亡或者被攻击。
标签:导演,函数,自定义,lock,ActorManager,物件,黑魂,239,模块 From: https://www.cnblogs.com/dontpanic1703/p/17657378.html