ビルダーでルート制限する方法の備忘録。(複数条件分岐応用編)
今回は突発でビルダーでのルート制限する方法の備忘録行きます。
このエンドを見ないと特定のエンドやルートが見られない、というやつですね。
前回の「ティラノビルダーで複数の条件を満たした場合のみ分岐させる方法の備忘録。」の応用で、ティラノスクリプトの力を借りて複数の条件を設定します。
[if]文のテンプレートと条件の書き方は前回の備忘録を参考にして下さい。
前回の参考記事↓
https://ci-en.net/creator/16848/article/797159
今回条件は以下の三つにします。
「end1、end2、end3、end4全てを見た場合にルートCに分岐する」
「end1、end2のみを見た場合にはルートBに分岐する」
「上記の条件を満たしていない場合はルートAに分岐する」
逆に言うと最初はルートAにしか入れず、end1、end2を見たらルートBに、end1、end2、end3、end4全てを見た場合にルートCに入れるという場合です。
早速行ってみましょう。
①ビルダー左上のプロジェクト>変数管理でend1、end2、end3、end4を作り、「システム変数」にチェックを入れます。
②分岐を解りやすくするため、シナリオ追加で各ルートシナリオ用のrootA、rootB、rootCと、各エンドシナリオ用のend1、end2、end3、end4を作ります。
(最初からあるscene1.ksは共通ルートとして扱います)
③シナリオ内のend1、end2、end3、end4にたどり着いた所で、それぞれ変数設定で変数がtrueになるように指定します。
そして今回はend後はタイトル画面にジャンプする指定にします。
④rootA、rootB、rootCの最初にフラグ「start」を追加します。(ジャンプ先の指定用。シナリオの最初に飛ばす場合はなくても動く)
⑤ルートの途中、分岐を発生させたい場所(この場合共通ルートであるscene1.ksの最後)に次のティラノスクリプトを記述します。
ティラノスクリプトで記述
[if exp="sf.end1 =='true'&& sf.end2 =='true'&& sf.end3 =='true'&& sf.end4 =='true'"]
[jump storage="rootC.ks" target="*start" ]
[elsif if exp="sf.end1 =='true'&& sf.end2 =='true'"]
[jump storage="rootB.ks" target="*start" ]
[else]
[jump storage="rootA.ks" target="*start" ]
[endif]
⑥rootAからend1.ksとend2.ksへは分岐ボタンで行けるように設定します。
同様に、rootBからend3.ksとend4.ksへは分岐ボタンで行けるように設定します。
これでプレビューしてみましょう。
end1、end2を見た状態になると……。
rootBに分岐しました。
4つのendを見た状態でもう一度「はじめから」を選ぶと……。
成功!
無事rootCに入れました。
今回は駆け足でしたが、ここまで。
フォロワー以上限定無料
突発で書いた一言。
無料