====== 変数操作 ======
===== if (条件分岐) =====
^属性^必須^値^説明^
|exp|yes|条件式| |
|;サンプル\\ @if exp="f.flagA == ‘true’ && f.flagB == ‘true’"\\ @waitclick\\ @endif|
AND条件 &&\\
OR条件 ||\\
注意\\
@if~@endif内にラベルを入れないでください\\
文字列比較の場合は'(シングルクオーテーション)を使用してください\\
|@if exp="'%flag' == 'love_ryou'"|
|@if exp="tf.hoge == '%flag'"|
===== else (ifの条件を満たさなかったときの処理) =====
===== elsif (ifの条件を満たさなかったとき条件付きで実行) =====
^属性^必須^値^説明^
|exp|yes|-|条件式|
===== endif (ifの終了) =====
※ifタグと一対一になっている必要があります。
===== emb (式評価結果の埋め込み) =====
^属性^必須^値^説明^
|exp|yes|-|引数をゲーム画面上に表示します|
@embではなく[emb]表記を利用してください
|OK:あああいいいううう[emb exp="tf.moji"]です。\\ NG:あああいいいううう@emb exp="tf.moji"です。|
固定値を入れる場合は ”’’” シングルクォーテーションをダブルクォーテーションで囲む
|[macro name=test]\\ @emb exp="mp.name"\\ @emb exp="'yyy'"\\ [endmacro]|
===== eval (式の評価) =====
^属性^必須^値^説明^限定機能^
|exp|yes|式|実行する式を記述します| |
|flush|no|true(初期値)\\ /false|サーバーに情報をアップロードする/しない|Browser版|
※システム変数更新の都度、サーバー通信が発生するため、コロン区切りで複数式の1行化推奨 Browser版\\
※値に変化のないシステム変数の更新はサーバー通信は発生しません。(例:sf.hogeが1の状態で「@eval exp="sf.hoge=1"」)\\
|セミコロンで区切ると複数の式を1つのeval内に記述できます。\\ 例:[eval exp="f.aaa = 1; f.bbb = 2"]|
◆flush\\
システム変数(sf)は値が更新されるたびにサーバに保管されるため都度サーバアクセスが発生します。\\
頻繁なアクセスが発生する場合はゲーム進行に支障が出るため必要に応じてflush=falseを使用してください。\\
・想定使用例\\
-システム変数を連続的に更新するがゲーム進行上それほど重要な更新ではない場合。\\
(例:セリフ表示毎にセリフ表示回数をシステム変数に保管する)\\
-システム変数を更新するlinkタグを連続して実行する際、処理を高速化したい。\\
(連続した選択肢処理の終了後、[eval exp="sf.hoge += 1"]などしてシステム変数がサーバーに反映されるよう留意ください)
===== while (ループ開始) =====
^属性^必須^値^説明^
|exp|yes|-|式を記述します、trueのとき実行されます|
while,endwhie,breakwhileでループ制御できます。\\
|[while exp="f.abc < 2"]\\ [eval exp=" f.abc = f.abc +1"]\\ [endwhile]|
※while小規模なループ処理で使用してください。\\
シナリオ全体が関わるような大きなループは動きがモッサリするので、jumpおよびcallで処理してください\\
※ループ中にはラベルを入れないでください\\
※ループ中にはストリームブロックにおいてファイル分割されないので、while中に容量の大きい素材を使うとシナリオがダウンロードが遅くなる場合があるので注意してください。
===== endwhile (ループ終了) =====
===== breakwhile (ループ中断) =====
===== clearvar (ゲーム変数の全消去) =====
===== clearsfvar (システム変数の全消去) =====
システムが必要としている情報も消してしまうので、非推奨となります。
===== prompt (文字列入力機能) =====
^属性^必須^値^説明^
|maxlength|yes|整数|入力出来る最大文字数\\ 全角・半角共通\\ 不正な入力をすると変数の値は0になる|
|minlength|yes|整数|入力出来る最小文字数\\ 全角・半角共通\\ 不正な入力をすると変数の値は0になる|
|caption|-|-|ダイアログボックスに表示される文章を指定する|
|set|-|-|ユーザーの入力を代入する変数を指定する|
サンプル
|[prompt caption="名前を入力してね(3文字以内)" set=f.name maxlength=3 minlength=1]|