设置多个状态链接的其他条件时,无法正常工作。

我尝试按照以下方式设置状态链接的“其他条件”,将两个条件合并到一个状态链接中,但未能成功。

AND 接触墙壁判定
AND 开关1为关闭状态
OR 接触墙壁判定
AND 开关2为开启状态

无论尝试多少次,只有OR下方的条件(接触墙壁判定 AND 开关2为开启状态)会被执行。

有趣的是,如果交换顺序,OR上方的条件(接触墙壁判定 AND 开关1为关闭状态)也可以执行;但是,一旦将OR上方的条件移动并放置在其他位置,该条件就会被忽略。无论条件是否满足,OR上方的条件即使达成也不会执行。

无论将切换条件设置为“全部”还是“任一”,结果都是一样的。

我尝试将OR的位置改为如下,但结果相同:

AND 接触墙壁判定
OR 开关1为关闭状态
AND 接触墙壁判定
AND 开关2为开启状态

即使接触墙壁判定,只要开关2没有开启,状态就不会转换。

如果将这两个条件分别通过不同的链接连接,两者都能正常转换。

只有在将条件合并到一个链接中时,才会出现只执行后放置的那个条件的情况。

作为测试,即使将条件逐个设置如下,也能正常工作:

AND 接触墙壁判定
OR 开关1为关闭状态

如果针对一个状态链接使用一个条件并连接多个链接,虽然可以运行,但如果将多个链接连接到ANY状态,运行会变得异常缓慢和沉重,因此希望能尽量减少链接数量。

请问这是怎样的规格说明?如果能告知,我将不胜感激。

你好!这个问题在之前的这个帖子中由 Moonling 解释过:複数の条件分岐の AND OR の挙動について

简而言之,OR 并没有被忽略。AGMaker 严格从左到右评估条件,因此 A AND B OR C AND D 会被解析为 (((A AND B) OR C) AND D)。这意味着你最后的 AND 条件限制了整个链接,这就是为什么只有 OR 之后的条件看似有效。这与アクツクMV的分组方式不同。

目前的变通方法是将两组条件拆分成单独的链接,或者将目标状态复制为非唯一状态,并将一个链接连接到每个状态。我知道这更麻烦一些,但该帖子也提到正在开发自由连接点链接,这将允许像アクツクMV那样在相同状态之间建立多个链接。希望这能帮到你!

谢谢。我没能找到过去的主题,不小心发了重复的帖子,非常抱歉。虽然那是1年前的话题,但感觉之后的情况并没有太大变化。

虽然大致理解了规格,但这确实是非常令人遗憾的设计。

虽然有些步骤比较繁琐,但可以通过其他方式处理,不过从 Any 状态发出的链接负载非常高,我本想通过合并条件来减少链接数量,但看来行不通。

虽然最近的更新有所缓解,但对于链接较多的对象,仍然会导致较长的加载时间。

虽然非常遗憾,但我只能做好承受一定加载时间和性能下降的准备,先通过大量连接链接来继续进行制作。

一种选择可能是更改生成标志和变量的方式。

例如,在更新变量 X 时,如果此更新总是发生在 Y 更新之后,可以添加一个额外的检查。如果 X 现在为 2,而 Y 已经为 3,则直接将变量 Z 设置为 5。

然后在另一个检查中,不再同时检查 X 和 Y,而是直接与 Z 的值进行比较。如果 Z 小于或等于 4,则不符合条件;如果 Z 为 5,则符合条件。

这种方法并非在所有情况下都适用,但当你希望通过更主动地管理变量/标志值来简化条件逻辑时,它会非常有用。