在蓝图操作中,遇到连线复杂的蓝图时,一般喜欢用折叠函数的操作。
折叠函数操作注意事项:
折叠的函数中一般有if判断时,如果true节点或者false节点没有后续连线的话,那么我们折叠的函数只会创造一个返回节点,没有后续连线的不会自动创造返回节点,需要我们手动创建返回节点。如果没有手动创造返回节点,在实际运行时,当函数里的条件判断走没有后续连线的
部分的话,此时函数在调用的程序里仍然能够继续向下执行,同时函数如果带有其他返回值的话,那么函数会返回上一次运行的返回节点的值。这样程序运行就会出现我们不想要的错误。
解决办法(目前想到的两个):
1.在if判断没有后续连续的地方加一个返回节点,同时附加一个bool输出,判定该函数是否完成了整个执行。之后在调用该函数的后面加一个if判断,判断该函数是否正常完成执行。
如图所示需要单独在写一个bool返回值,判断能否往下继续执行。
上面函数中,为所有后续不执行的if判断手动添加的返回节点,同时为isComplete赋值为false
下面这个为正常执行的返回节点,同时为isComplete赋值为true
2.直接选择折叠到宏,当宏走没有后续连线的地方时,宏会中断,不在往下继续执行。
如下图所示:false的后面没有连接输出,此时的宏会中断,不在向下执行。