If,ElseIf,Else,EndIf


シナリオシート内でif分岐を使って、一定範囲のコマンドを処理をさせたりさせなかったりします。

サンプル

リファレンス

Command 説明 Arg1 Arg2 Arg3 Arg4 Arg5 Arg6
If If文を開始 if判定の論理式
ElseIf ElseIf文を開始 if判定の論理式
Else Else文を開始
EndIf If文終了

If-ElseIf-Else-Endif

Ifで必ず始まり、EndIfで必ず終える必要があります。

Command Arg1 説明
If flag1
…任意のコマンド Ifの条件(falg1)がtrueだったら、実行される
…任意のコマンド コマンドは複数設定可能
ElseIf falg2
…任意のコマンド ElseIfの条件(falg2)がtrueだったら、実行される
…任意のコマンド コマンドは複数設定可能
Else
…任意のコマンド Ifの条件もElseIfの条件も満たされなかった場合、実行される
…任意のコマンド コマンドは複数設定可能
EndIf

このように、If系コマンドで囲んだコマンド郡の実行を条件分岐することができます。

if分岐は非推奨

if分岐は基本的には非推奨です。なぜなら

  • 既読ページか否か正確にとれない。
  • シナリオラベルをまたぐ場合に使ってはいけない。

というわかりづらい制約があるため、不具合のもとなりがちだからです。

条件つきJumpを使っても同じことができるので、そちらを推奨しますが、if分岐のほうが書きやすいこともあるため、利便性のために用意してあります。
また、「同じシナリオでも服装を変えたりしたい」「ユーザー入力によってキャラの性別を変えたい」という場合は、Characterシート、TextureシートのConditionalを使うことを推奨します。