# 複数の条件分岐の AND OR の挙動について

**URL:** https://guild.rpgmakerofficial.com/t/topic/511
**Category:** バグ報告
**Created:** [2025 年 7 月 4 日午前 12:19 UTC](https://guild.rpgmakerofficial.com/t/topic/511 "2025-07-04T00:19:07Z")
**Posts on this page:** 14
**Page:** 1

<div class="post-metadata">

### Author: ![Kome](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/kome/32/811_2.png) [@Kome](https://guild.rpgmakerofficial.com/u/Kome)
#### Post date: [2025 年 7 月 4 日午前 12:19 UTC](https://guild.rpgmakerofficial.com/t/topic/511/1 "2025-07-04T00:19:07Z")

</div>

![AndOr](https://us1.discourse-cdn.com/flex002/uploads/rpgmaker_community/original/1X/23aae38d3c7422f9af4c2e57ca17c029cdabeced.png)  
アクツクのバージョン: v1.0.12 based on Godot v4.3.1 [861d96a50]  
OS:windows11  
CPU:i5-12600K  
GPU:RTX3060  
メモリサイズ:32GB

症状:  
リンクのその他の条件の、AND、ORの使い方ですが  
この画像の形で、アクツクMVと同じと考えて大丈夫でしょうか？

ひとまず、この扱いで合っているとして進めます。  
条件①もしくは条件②のどちらかを満たしていれば遷移するとしたいのですが

②だけを満たしている時は遷移するのでが、①だけを満たしている時は遷移しません。

もちろん、アクツクMVではこの条件で問題なく動いています。  
アクションゲームメーカーの方でも、下二つを消して、条件①だけにすると  
問題なく遷移します。

ご確認頂ければと思います。

---

<div class="post-metadata">

### Author: ![Moonling](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/moonling/32/369_2.png) [@Moonling](https://guild.rpgmakerofficial.com/u/Moonling)
#### Post date: [2025 年 7 月 4 日午前 12:50 UTC](https://guild.rpgmakerofficial.com/t/topic/511/2 "2025-07-04T00:50:42Z")

</div>

リンクの条件については正しいですが、条件①もしくは条件②のどちらかを満たしていれば遷移するとしたい場合は少し工夫が必要です。

> [@マニュアル: ヴィジュアルスクリプトの操作](https://guild.rpgmakerofficial.com/t/topic/330/3):
>
> リンクのインスペクター 優先度(Priority) 同時に遷移条件を満たす場合、この値がより高いリンクが起動します。 ステートを切り替える条件(Conditions for Switching Actions) 全ての条件が満たされた(SATISFY\_ALL): 「入力条件」と「その他の条件」の双方が満たされた場合に遷移します。 いずれかの条件が満たされた(SATISFY\_…

こちらに記載をさせていただいたのですが、  
`A AND B OR C AND D`  
と4つの条件を作った際の計算は  
`(((A AND B) OR C) AND D)`  
という条件式となり、AとBを満たし、同時にDを満たすか、CとDを満たす場合に条件を満たします。

もし、ご希望のように遷移条件を設定したい場合は。  
２つのリンクに分ける必要があります。  
A＆Bのリンク1  
C＆Dのリンク2  
と分けます。

いまのところ一つのノードに2つのリンクを繋げない（これは改修を予定していますが）ため、  
リンク１をつなげる迂回用ステート１  
リンク２をつなげる迂回用ステート２  
を作成し、そこから無条件遷移条件でもともと遷移したいステートにつなぎます。  
この際、「１フレームを経過しない。」オプションを有効にすれば判定が遅れるようなこともありません。

---

<div class="post-metadata">

### Author: ![Kome](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/kome/32/811_2.png) [@Kome](https://guild.rpgmakerofficial.com/u/Kome)
#### Post date: [2025 年 7 月 4 日午前 5:34 UTC](https://guild.rpgmakerofficial.com/t/topic/511/4 "2025-07-04T05:34:02Z")

</div>

お返事ありがとうございます。  
(((A AND B) OR C) AND D)という式がややこしくて、まだピンときていないのですが・・。

ひとつお聞きしたいのは、アクツクMVと、AND OR の仕様が変わったということでしょうか？  
アクツクMVと挙動が違うので、バグとして報告させて頂いたのですが。

私がやっている作業は、アクツクMVでずっとつくっていたものの、AGMへの移植なのですが  
アクツクMVでつくっていたものには、この手の遷移はそれなりの数があり  
上記のAND OR の条件で、すべて望み通りの遷移をしていました。

AGMではそれらの仕様が変わり、今後は新しいやり方で製作する必要があると認識すれば良いのでしょうか？

---

<div class="post-metadata">

### Author: ![Moonling](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/moonling/32/369_2.png) [@Moonling](https://guild.rpgmakerofficial.com/u/Moonling)
#### Post date: [2025 年 7 月 4 日午前 5:56 UTC](https://guild.rpgmakerofficial.com/t/topic/511/5 "2025-07-04T05:56:25Z")

</div>

こちら現在の仕様としては新しいものになります・・・が、  
確かに普通に考えると(A AND B) OR (C AND D)の形になるほうが自然な気はしますね。  
少し開発と協議してみます。

---

<div class="post-metadata">

### Author: ![Kome](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/kome/32/811_2.png) [@Kome](https://guild.rpgmakerofficial.com/u/Kome)
#### Post date: [2025 年 7 月 4 日午前 6:22 UTC](https://guild.rpgmakerofficial.com/t/topic/511/6 "2025-07-04T06:22:33Z")

</div>

ありがとうございます 汗  
すみません、(((A AND B) OR C) AND D)というのが、ホントによく分からなくて（＾＾；

---

<div class="post-metadata">

### Author: ![Tanaka](https://avatars.discourse-cdn.com/v4/letter/t/ecae2f/32.png) [@Tanaka](https://guild.rpgmakerofficial.com/u/Tanaka)
#### Post date: [2025 年 7 月 4 日午前 10:57 UTC](https://guild.rpgmakerofficial.com/t/topic/511/7 "2025-07-04T10:57:03Z")

</div>

これ私もちょうど引っかかってました・・・。

変な実装法ですがステートを非ユニークでコピペして二つ並べて、それぞれにA＆B、C＆Dで遷移するのが今の仕様だと一番スマートかもしれません。（もう気づいてるかもしれませんが）

 ![kk](https://us1.discourse-cdn.com/flex002/uploads/rpgmaker_community/original/1X/db594d9cd47653f2c8506860cc8a807c6885c80f.png)

---

<div class="post-metadata">

### Author: ![Kome](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/kome/32/811_2.png) [@Kome](https://guild.rpgmakerofficial.com/u/Kome)
#### Post date: [2025 年 7 月 4 日午後 12:38 UTC](https://guild.rpgmakerofficial.com/t/topic/511/8 "2025-07-04T12:38:17Z")

</div>

そうですね、Moonling様もその方法を紹介して下さっています。  
他の投稿ですが、AステートからBステートへのリンクが１本しか繋げない問題で私もその方法でやっているのですが、間に挟むダミーの様なステートは、１フレームを経過しないにチェックをいれたり、その他の項目、例えば左右の移動速度など、各種項目を１つ前のステートと同じにしないといけないなど、けっこう面倒なのですよね。

ごく希な作業ならともかく、AND OR の仕様変更でも、ステート間リンク1本問題でもその作業が必要となると、結構な頻度でその面倒な作業を行わないといけない様に思いますので、できれば改良して頂けると嬉しいですね。  
アクツクMVでうまく動いていた部分は、できるだけAGMでも採用して貰いたいところです。  
もちろんアクツクMVよりも、より良くなる改良は大歓迎です。

---

<div class="post-metadata">

### Author: ![trombeningen](https://avatars.discourse-cdn.com/v4/letter/t/c68b51/32.png) [@trombeningen](https://guild.rpgmakerofficial.com/u/trombeningen)
#### Post date: [2025 年 7 月 4 日午後 11:36 UTC](https://guild.rpgmakerofficial.com/t/topic/511/9 "2025-07-04T23:36:52Z")

</div>

欲張りかもしれませんですかリンク条件に算式みたいの括弧機能追加できますかな…？

---

<div class="post-metadata">

### Author: ![Kome](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/kome/32/811_2.png) [@Kome](https://guild.rpgmakerofficial.com/u/Kome)
#### Post date: [2025 年 7 月 5 日午前 12:15 UTC](https://guild.rpgmakerofficial.com/t/topic/511/10 "2025-07-05T00:15:22Z")

</div>

たしかに括弧を自分で好きな位置に付けられたら、全て解決しそうですね。

(変数A=1 and 変数B=2) ： 変数Aが１ なおかつ 変数Bが２ のとき遷移  
(変数B=2 or 変数C=3) ：変数Bが２ もしくは 変数Cが３ のとき遷移  
(変数A=1 and 変数B=2) or (変数B=2 and 変数C=3) ：変数Aが１ なおかつ 変数Bが２ のとき、もしくは 変数Bが２ なおかつ 変数Cが３ のとき遷移  
(変数A=1 and (変数B=2 or 変数C=3)) ：変数Aが１でなおかつ 変数Bが２ もしくは 変数Cが３ のとき遷移

こんな感じでしょうか？ プログラムを少しだけかじっている自分としてはとても分かりやすいですが、VSでどう落とし込まめますかね。括弧機能追加というのは、希望を感じちゃいます。とにかく使いやすくわかりやすくなって欲しいですね♪

---

<div class="post-metadata">

### Author: ![Kome](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/kome/32/811_2.png) [@Kome](https://guild.rpgmakerofficial.com/u/Kome)
#### Post date: [2025 年 7 月 9 日午前 12:15 UTC](https://guild.rpgmakerofficial.com/t/topic/511/11 "2025-07-09T00:15:56Z")

</div>

失礼しました、ご助言をちゃんと理解出来ていませんでした。  
非ユニークでコピーですか、なるほど、それだと別のダミーステートをつくる必要はないわけですね、確かにそれが今のところ一番スマートですね。

ただ今後はやはり、括弧を何とか導入して頂けると嬉しいですよね。  
(((A and B) or C) and D) ←この式自体、ピンとこないややこしさもあるのですが、それよりも現状の  
A and B or C and D が (((A and B) or C) and D) になるのが直感的ではないと思いますし  
そもそも、アクツクMVのときの、  
A and B or C and D が (A and B) or (C and D) というのも、まだスッキリしているとはいえ、括弧がないのになぜこうなるのか？  
というのがありますよね。  
しかもこのやり方だと、たとえば  
(A and B) and (C or D or E) という感じで、(A and B)を全ての条件に入れたい場合

(A and B and C) or (A and B and D) or (A and B and E)

という感じの条件になり、すごく大変だったんですよね・・。  
実際には括弧は無いので、↓となり、アクツクMVでつくっていて相当ややこしくなっていました。

A and B and C or A and B and D or A and B and E

上記の場合、リンク線をorごとに３つにわける方法もありますが  
AGMでは１本しか繋げないという現状もあります・・涙

また、まずは(A and B)条件のアクション（ステート）と経過してから、次の分岐にというやり方もありますが  
アクツクMVでは、コモンアクションへの入り口に上記の様な複雑な条件をたくさん使っていたので、なかなかアクション（ステート）を分けるのも難しく・・。出来なくはないと思いますが、出来るだけ一か所の画面で条件をまとめたいですよね。

やはりAGMでは、何とか括弧をユーザー側で入れられる仕様にして頂きたいですが、難しいのですかねぇ・・。  
その場合は、せめてアクツクMVの仕様には戻して頂きたいです。

---

<div class="post-metadata">

### Author: ![Kome](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/kome/32/811_2.png) [@Kome](https://guild.rpgmakerofficial.com/u/Kome)
#### Post date: [2025 年 8 月 19 日午前 8:50 UTC](https://guild.rpgmakerofficial.com/t/topic/511/12 "2025-08-19T08:50:35Z")

</div>

こちらの件、どうなっておりますでしょうか？  
リンクの AND OR の扱いは、アクツクMVの形式に戻すか、もしくは切望したいのは、さらに進化させて「括弧」を導入する、となります。

この件は、改良が行われると、現状動いているスクリプトがあちこちで動かなくなるというジャンルの変更かと思われます。  
なので、かく言う私も、この改良がなされるまでは、AGMでの作業は中断している様な状況です。

遅くなれば遅くなる程、ユーザー側の手直しの作業量がどんどん増えていくので  
かなり優先順位が早く改良がなされるだろうと考えていたのですが・・。

かといって、現状のままでは、ものすごく使いにくいですよ。

---

<div class="post-metadata">

### Author: ![Moonling](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/moonling/32/369_2.png) [@Moonling](https://guild.rpgmakerofficial.com/u/Moonling)
#### Post date: [2025 年 8 月 19 日午前 9:04 UTC](https://guild.rpgmakerofficial.com/t/topic/511/13 "2025-08-19T09:04:40Z")

</div>

こちらですが、現在実装中の「自由な接続点のリンク」と合わせての実装作業中となります。

「自由な接続点のリンク」の実装でアクツクMV同様、同じステートAから同じステートBに複数のリンクをつなげることが可能、というシステムとなりますのでそちらをお待ちいただければと思います。おまたせして申し訳ございません。

---

<div class="post-metadata">

### Author: ![Kome](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/kome/32/811_2.png) [@Kome](https://guild.rpgmakerofficial.com/u/Kome)
#### Post date: [2025 年 8 月 19 日午前 9:28 UTC](https://guild.rpgmakerofficial.com/t/topic/511/14 "2025-08-19T09:28:09Z")

</div>

ありがとうございます、自由な接続点のリンク導入、楽しみに待ちます♪  
アクツクMVは個人的にすごく良く出来てると思うので、良かった部分は是非残して頂きたいです。  
AND OR の扱いも、アクツクMVのものに戻るということでしょうか？

また、可能であれば括弧が導入されればめちゃくちゃ使いやすくなり、  
この点においてアクツクMVを超えると思うのですが、ありえますでしょうか？

---

<div class="post-metadata">

### Author: ![Moonling](https://sea2.discourse-cdn.com/flex002/user_avatar/guild.rpgmakerofficial.com/moonling/32/369_2.png) [@Moonling](https://guild.rpgmakerofficial.com/u/Moonling)
#### Post date: [2025 年 8 月 19 日午前 10:29 UTC](https://guild.rpgmakerofficial.com/t/topic/511/15 "2025-08-19T10:29:36Z")

</div>

いえ、AND ORはご指摘の通り作成済みのプロジェクトの動作に影響を与えてしまうのと、対応できるとしても自由リンクと競合してしまうのでそのあとになります。

そのため、まずは自由リンクを対応し、それでもやはり問題があるようであればプロジェクトの動作に影響がでても対応するのかどうかを検討するということになります。
