index
エンジン動作関数
@exit
@gotitle
@gameclear
シナリオ関数
@goto
@nextgoto
@snfload
@snfloadgoto
サブルーチン関数
@call
@callgoto
@return
ウェイト関数
@wait
@keywait
@keywait2
@exwaitset
@exwait
その他関数
@selectclear
@chapter
@cdvolumelabel
@debugvalue
@autoadvmsgset
条件分岐関数
@if
@wif
@fif
フラグ変数操作関数
@setflag
@getflag
@countflag
メニュー・スキップ等使用禁止関数
@menuuse
@cantwarp
@canteffectskip
@stopallskip
@cantforceskip
@cantselectsave
@cantseeeventcg
@canteffectspeed
@cantsave
@cantload
履歴関数
@clearhistory
@canthistory
@writehistoryエンジン動作系関数
@exit
解説
プレイヤーを完全に終了させます。
引数
引数の指定は必要ありません。例
〜なんらかの処理〜
@exit
@gotitle
解説
スタートファイルの先頭へジャンプします。ソフトウェアリセットも含みます。
引数
引数の指定は必要ありません。例
〜なんらかの処理〜
@gotitle
@gameclear
解説
変数やメニュー状態などを全て初期化(起動時状態)します。gotitleのタイトルへの移動機能を除いたものです。
引数
引数の指定は必要ありません。例
〜なんらかの処理〜
@gameclear
シナリオ関数
@goto(ジャンプ先ラベル名)
解説
ジャンプ先ラベルがある地点まで現在のシナリオファイル内の一番上から検索してジャンプします。
引数
ジャンプ先ラベル名 : ラベル名(!文章)を指定します。 例
@goto("!raberu")
@nextgoto(ジャンプ先ラベル名)
解説
現在のシナリオファイルの行番号位置から下のジャンプ先ラベルがある地点まで ジャンプします。
引数
ジャンプ先ラベル名 : ラベル名(!文章)を指定します。 例
@nextgoto("!raberu10")
@snfload(シナリオファイル名)
解説
シナリオファイルを読み込んでそのシナリオの先頭に移動します。
引数
シナリオファイル名 : シナリオスクリプトファイル名を指定します。 例
@snfload("testdata.snf")
@snfloadgoto(シナリオファイル名,ジャンプ先ラベル名)
解説
シナリオファイルを読み込んでそのシナリオの指定ラベルに移動します。
引数
シナリオファイル名 : シナリオスクリプトファイル名を指定します。 ジャンプ先ラベル名 : ラベル名(!文章)を指定します。 例
@snfloadgoto("ending.snf","!ed02")
サブルーチン関数
@call(シナリオファイル名)
解説
シナリオファイルを読み込みます。この命令で呼び出すとき、@returnで呼び出し元のシナリオに戻ることが出来ます。この関数で呼び出した先で、さらにcall系命令を使うことは出来ません。
引数
シナリオファイル名 : シナリオスクリプトファイル名を指定します。 例
@call("testsub.snf")
@callgoto(シナリオファイル名,ジャンプ先ラベル名)
解説
@callに、ラベルジャンプを加えたものです。ジャンプ先から@return命令で戻ることが出来ます。サブルーチンに近い命令となります。
引数
シナリオファイル名 : シナリオスクリプトファイル名を指定します。 ジャンプ先ラベル名 : ラベル名(!文章)を指定します。 例
@callgoto("subroutine.snf","!func_gameover")
@return
解説
呼び出し元(@call系関数を使ったシナリオファイル)の元の位置に戻ります。 この命令を使わないと、@call命令は@snfload命令と同じ意味になります。
引数
引数の指定は必要ありません。例
〜ジャンプ先での何らかの命令〜
@return
ウェイト関数
@wait(待ち時間)
解説
指定時間、待ちます。
引数
待ち時間 : ミリ秒で指定します。 例
@wait(4000)
@exwaitset
解説
@exwaitの待ち時間の調整用の基準を設定します
引数
引数の指定は必要ありません。例
@exwaitset
@exwait(待ち時間)
解説
@exwaitsetでセットした時間との差を考慮して指定時間、待ちます。
引数
待ち時間 : ミリ秒で指定します。 例
@exwaitset
〜なんらかの処理〜
@exwait(4000)注意事項
この命令の、「〜なんらかの処理〜」の区間でセーブ処理をした場合(文章命令や選択肢命令を置く等)、正常にウェイト命令が動作しませんのでご注意下さい。
@keywait
解説
キー待ちをします。(セーブ不許可型。メニューからセーブを呼び出せません。)
引数
引数の指定は必要ありません。
例
省略
@keywait2
解説
キー待ちをします。(セーブ可能。情報ウィンドウ等の一時表示的な機能をしてる場合、保持できないので注意)
引数
引数の指定は必要ありません。
例
省略
条件分岐関数
@if(数値の条件分岐);@実行したい関数
解説
シナリオを数値条件で分岐させます。
引数
数値の条件分岐 : 数値変数同士・数値変数と数値の比較文を記述します。 実行したい関数 : 分岐が真(True)の時に実行させたい関数(主にジャンプ系)を指定します 例
@if(#c1_hp>=1000);@goto("!levelup")
@wif(文章の条件分岐);@実行したい関数
解説
シナリオを文章条件で分岐させます。
引数
文章の条件分岐 : 文章変数同士・文章変数と文章の比較文を記述します。 実行したい関数 : 分岐が真(True)の時に実行させたい関数(主にジャンプ系)を指定します 例
@wif($name=="abc");@snfload("abxc.snf")
@fif(フラグの条件分岐);@実行したい関数
解説
フラグの分岐を行います。
引数
フラグの条件分岐 : 左にフラグ番号、右にスイッチ(True/False)を指定します。 実行したい関数 : 分岐が真(True)の時に実行させたい関数(主にジャンプ系)を指定します 例1(通常例)
@fif(55==True);@call("abdfg.snf")
例2(フラグ番号を変数で置き換えた場合の例)
#TRUE=1
@setflag(1,True)
@setflag(2,#true)
@fif(#True==True);@goto("!tr1")
\1Falseでしたよ。おかしいんじゃない?\h
@goto("!end")
!tr1
\1Trueでしたよ。いいんじゃない?\h
!end
フラグ変数操作関数
@setflag(フラグ番号,スイッチ)
解説
フラグのON/OFFを行います。フラグは、画像の既読やシナリオの既読のチェックなどに利用するものです。1〜4095番まで利用できます。
引数
フラグ番号 : フラグの番号(1〜4095)を指定します。 スイッチ : フラグに代入するスイッチを指定します。 例
@setflag(20,True)
@getflag(フラグ番号):スイッチ
解説
現在のフラグ状態を取得します。返されるスイッチは0か1となります。
引数
フラグ番号 : フラグの番号(1〜4095)を指定します。 例
#sw=@getflag(20)
@countflag(頭フラグ番号,尾フラグ番号):フラグの立ち率
解説
関数名の解説文はここですよ。
引数
頭フラグ番号 : 計算開始の番号を指定します。 尾フラグ番号 : 計算終了の番号を指定します。 例
#flagper=@CountFlag(20,100)
メニュー・スキップ等使用禁止関数
@menuuse(メニューの使用スイッチ)
解説
メニューのセーブ・ロード・履歴・スキップを一時的に使えなくします。タイトルやオープニング、エンディングなどに使用します。
引数
使用スイッチ : メニューを使用しない場合はTrueを指定します。 例
@menuuse(True)
@cantwarp(使用不可スイッチ)
解説
選択肢ジャンプと選択肢へ戻る機能を禁止します。
引数
使用不可スイッチ : 機能を使用しない場合はtrueを指定します。使用する場合はFalseを指定します。 例
@cantwarp(False)
@canteffectskip(使用不可スイッチ)
解説
エフェクトスキップを禁止する場合はTrueとします。
引数
使用不可スイッチ : 機能を使用しない場合はtrueを指定します。使用する場合はFalseを指定します。 例
@canteffectskip(True)
@stopallskip
解説
スキップ中の場合、強制的にスキップを停止します。
引数
引数の指定は必要ありません。
例
〜何らかの処理〜
@stopallskip
@cantforceskip(使用不可スイッチ)
解説
CTRL等のキーによる強制スキップを禁止します。
引数
使用不可スイッチ : 機能を使用しない場合はtrueを指定します。使用する場合はFalseを指定します。 例
@cantforceskip(True)
@cantselectsave(使用不可スイッチ)
解説
選択肢での自動選択肢セーブ(前の選択肢へ戻る機能用)を行いません。スイッチ変更時、直前の選択肢セーブは破棄されます。(直前の選択肢が曖昧となるため)
引数
使用不可スイッチ : 機能を使用しない場合はtrueを指定します。使用する場合はFalseを指定します。 例
@cantselectsave(True)
@cantseeeventcg(使用不可スイッチ)
解説
イベントCG閲覧機能を使用するかどうかの設定を行います。
引数
使用不可スイッチ : 機能を使用しない場合はtrueを指定します。使用する場合はFalseを指定します。 例
@cantseeeventcg(True)
@canteffectspeed(使用不可スイッチ)
解説
エフェクト速度調整を無効にします。OP時など速度調整されては困る時にこの機能を使用します。
引数
使用不可スイッチ : 機能を使用しない場合はtrueを指定します。使用する場合はFalseを指定します。 例
@canteffectspeed(True)
@cantsave(使用不可スイッチ)
解説
セーブ機能を使用不可能にするかどうかを設定します。
引数
使用不可スイッチ : 機能を使用しない場合はtrueを指定します。使用する場合はFalseを指定します。 例
@cantsave(False)
@cantload(使用不可スイッチ)
解説
ロード機能を使用不可能にするかどうかを設定します。
引数
使用不可スイッチ : 機能を使用しない場合はtrueを指定します。使用する場合はFalseを指定します。 例
@cantload(True)
履歴関数
@clearhistory
解説
履歴をクリアします。はじめからのシナリオの際にお使い下さい。
引数
引数の指定は必要ありません。
例
@clearhistory
@canthistory(履歴の記録禁止スイッチ)
解説
履歴の記録を禁止します。
引数
履歴の記録禁止スイッチ : Trueを指定すると履歴の記録を禁止します。Falseで解除されます。 例
@canthistory(True)
@writehistory(任意の文章)
解説
履歴に任意の文章を追加します。
引数
任意の文章 : 履歴に追加する文章を指定します 例
@writehistory(True)
その他関数
@selectclear
解説
選択肢情報をクリアします。基本的に、自動で初期化されるので使用する必要はありません。
引数
引数の指定は必要ありません。
例
@selectclear
@chapter(シナリオの章名)
解説
シナリオのタイトルや章名を指定してください。セーブデータの情報に利用します。
引数
シナリオの章名 : 場面の説明タイトルを記述します。 例
@chapter("第5章・告白")
@cdvolumelabel(ボリュームラベル名)
解説
ボリュームラベル名からCDを検索して、存在したCDのドライブを設定の通常再生指定ドライブにします。
引数
ボリュームラベル名 : 音楽再生用CDのボリュームラベルを指定します。 例
省略
@debugvalue(ファイル名,変数種類番号)
解説
デバッグデータを出力します。
引数
ファイル名 : 出力ファイル名を指定します 変数種類番号 : 変数のタイプを数値で指定します。 変数処理番号
0 : フラグ変数 1 : ユーザー数値変数 2 : ユーザー文字変数 3 : システム数値変数 4 : システム文字変数 例
@debugvalue("flagdata.txt",0)
@autoadvmsgset(自動補完スイッチ)
解説
メッセージ表示行で、先頭と後尾に\w,\hを自動で付加します。自動付加するときはTrue,しないときはFalseを指定します。
引数
自動補完スイッチ : 補完処理を自動で行う場合はTrueを指定します。 例
省略