ゲームスタート・リセット・終了
*define定義ブロックの開始位置ラベル
*start実行ブロックの開始位置ラベル
defineresetスクリプトを読みなおさせる
endゲームを終了してウインドウを消す
game定義ブロックを終了し、ゲームを実行する
resetゲームをリセットする
スクリプト書式関連
$文字変数の接頭語
%数字変数の接頭語
*ラベルの接頭語
/改行を無視する
:一行に複数の命令をつなげて書く
;この記号がある行をコメントとして扱う
?配列変数の接頭語
{}表示文字列中で値を格納する
~jumpf と jumpb の飛び先
テキストウィンドウ
btnnowindoweraseボタン時にテキストウィンドウを消えなくする
erasetextwindowエフェクトの時もテキストウインドウを消さないようにする
fontテキスト表示のフォントを変える
gettext現在テキストウィンドウに表示されているテキストを取得する
noterasemanウィンドウ消去時、人を消さないようにする
setwindowテキストウインドウと文字の表示の仕方を設定する
setwindow2ウィンドウの見た目だけを変更する
setwindow3回想バッファをクリアしないsetwindow
tateyoko縦書きモードにする
textoffテキストウインドウを消す
textonテキストウインドウを出す
textspeeddefaultテキスト表示速度をデフォルトにする
windowchipテキストウィンドウと表示を同期させるスプライトを指定する
windoweffectテキストウインドウのエフェクトを指定する
テキスト表示
!s文字表示速度を指定する
#文字の色を変える
br表示する文章に空行をはさむ
defaultfontフォントの種類を指定する
locateテキストウインドウの設定を変えないで文字の表示位置を変える
puttextif文のあとなどにちょっとした表示をする
shadedistance影の位置を指定する
textclear表示されているテキストを消す
textspeedテキストの表示速度を変更する
クリック待ち
@クリック待ちする
_直後の強制クリックを無視する
\改ページ待ちする
autoclickクリックしなくても自動で進むようにする
clickクリック待ちカーソルを表示せずにクリック待ちする
clickstr特定の文字があったらクリック待ちにする
clickvoiceクリック待ちでクリックしたときに音を鳴らす
linepage一行ごとにクリック待ちするようにする
lrclick左クリックもしくは右クリックを待つ
カーソル
abssetcursor位置を固定してクリック待ちカーソルを表示する
getnextlineテキストウィンドウにおける次の行の行頭の位置を取得する
mousecursorマウスカーソル画像を設定する
mousemodeマウスカーソルの表示を切り替える
movemousecursorマウスを画面上の任意の位置に移動させる
setcursorクリック待ちのカーソル画像ファイルの表示設定
画像表示
allsphideすべてのスプライトを一時隠す
allspresumeallsphideで隠したスプライトを表示する
amspスプライトの表示位置を変える(その2)
bg背景画像を表示する
bgalia特殊なサイズの背景を表示する
bgcopy現在の画面を背景画面として取り込む
blt高速に画面上で画像表示する
cell直接スプライトのセルを指定する
cl表示している立ち絵を消す
cspスプライトをメモリ上から消す
effectskipエフェクトをスキップできるかどうかを指定する
getspmodeスプライトの表示状態を確認する
getspsizeスプライトのサイズを取得する
humanorder立ち絵間の優先順位を指定する
humanpos立ち絵の基準位置を設定する
humanzスプライトと立ち絵の重なりの優先順位を指定する
ld立ち絵を表示する
lspスプライトを表示可能な状態でメモリ上に呼び出す
lsphスプライトを表示不可の状態でメモリ上に呼び出す
mspスプライトの表示位置を変える(その1)
ofscpyblt命令で描かれた画像をオフスクリーンバッファに転送する
print表示可能の状態の画像を表示し表示不可の状態の画像を消す
repaint画面を書きなおす
spfont文字列スプライトのフォントを設定する
spstr複合ボタンの文字列でのスプライト指定で表示・非表示を切り替える
strsp複数行文字列のスプライトをメモリ上に呼び出す
strsph複数行文字列のスプライトを非表示状態でメモリ上に呼び出す
tal立ち絵の透明度を変更する
transmodeアルファブレンドの透明部分のデフォルト設定を変える
underline立ち絵の接地ラインを決める
vspスプライトの表示・非表示を切り替える
windowbackテキストウィンドウを、立ち絵と同じ位置に挿入
画像エフェクト
effectエフェクトの指定をする
effectblankエフェクト終了後のウエイトを設定する
effectcut「選択肢までとばす」時、エフェクトをすべて瞬間表示にする
flushout特殊効果
monocroモノクロ・セピア色画面にする
mosaicinモザイクから戻すエフェクトを表示する
mosaicoutモザイク化するエフェクトを表示する
negaネガポジ反転して表示する
quake画面を揺らす
quakex画面を横に揺らす
quakey画面を縦に揺らす
seteffectspeedエフェクト速度を指定する
文字・数字・バー表示
$文字変数の中身を表示
%数字変数の中身を表示
barバーの表示指定をする
barclearバーの設定をクリアする
prnum数値ラベル表示設定をする
prnumclear数値ラベル設定をクリアする
音楽・SE演奏
bgm圧縮された音楽ファイルをループで演奏する
bgmdownmode音声再生時にBGMボリュームを下げる
bgmfadeinBGMのフェードイン時間を指定する
bgmfadeoutBGMのフェードアウト時間を指定する
bgmonce圧縮された音楽ファイルを一度だけ演奏する
bgmstop圧縮された音楽ファイルの演奏を停止する
bgmvolbgmのボリュームを変える
cdfadeoutCD-DAのフェードアウトの時間を指定
chkcdfileCDドライブに「ファイル名」のファイルがあるかどうか判定
chkcdfile_exCDドライブに「ファイル名」のファイルがあるかどうか判定
chvoldwaveチャンネルのボリュームを変える
dsoundDirectSoundを使うことを宣言する(現在は使わなくてよい)
dvボイス再生命令の省略書式(dwave)
dwaveDirectSoundを使いWAVファイルを演奏する
dwaveloadメモリ上にwaveファイルをロードする
dwaveloopDirectSoundを使いWAVファイルをループで演奏する
dwaveplayロードしてあるwaveファイルを再生する
dwaveplayloopロードしてあるwaveファイルをループで再生する
dwavestopDirectSoundのWAVファイル演奏を止める
getbgmvolbgmのボリュームを取得する
getmp3volmp3のボリュームを取得する
getsevolseのボリュームを取得する
getvoicevolvoiceのボリュームを取得する
loopbgm繰り返し演奏する
loopbgmstop繰り返し演奏を停止する
mp3圧縮された音楽ファイルを一度だけ演奏する
mp3fadeinBGMのフェードイン時間を指定する
mp3fadeoutBGMのフェードアウト時間を指定する
mp3loop圧縮された音楽ファイルをループで演奏する
mp3savemp3再生中にセーブするとロード後もを再生
mp3stop圧縮された音楽ファイルの演奏を停止する
mp3volbgmのボリュームを変える
mvmp3の音声を再生する
playCD-DAやMIDIをループで演奏する
playonceCD-DAやMIDIを一度だけ演奏する
playstopCD-DAとMIDIの演奏を止める
sevol効果音のボリュームを変える
stop演奏されている全ての音楽を止める
vボイス再生命令の省略書式(wave)
voicevolボイスのボリュームを変える
waveWAVEを演奏する
waveloopWAVEをループで演奏する
wavestopWAVEの演奏を止める
動画再生
aviaviファイルを再生する
movie動画を再生する
mpegplaympegムービーを再生する
選択肢
select選択肢を表示する
selectcolor選択肢の文字の表示色を指定する
selectvoice選択肢を選んだときに音を鳴らす
selgosubサブルーチンへジャンプする選択肢を表示する
selnum選択肢を表示してその結果を数字変数に数字で代入する
ジャンプ
gosubサブルーチンをコールする
goto指定するラベルへジャンプする
jumpb直前の~記号の場所にジャンプする
jumpf次の~記号の場所にジャンプする
returnサブルーチンから戻る
skipスクリプトを指定した行数だけスキップさせる
tablegotoテーブルジャンプ
クリック監視フラグジャンプ
lr_trap左右クリックに反応して指定ラベルへジャンプする
lr_trap2左右クリックと「次の選択肢に進む」に反応して指定ラベルへジャンプする
r_trap右クリックに反応して指定ラベルへジャンプする
trap左クリックに反応して指定ラベルへジャンプする
trap2左クリックと「次の選択肢に進む」に反応して指定ラベルへジャンプする
画像ボタン
btn画像でボタンを配置する(その1)
btndefボタン画像ファイルをメモリ上に呼び出しておく
btntime時間制限つき画像ボタンの制限時間を設定する
btntime2btntimeとほぼ同じだが、ボイスの発生終了まで待つ
btnwait画像ボタンを表示してクリック待ちする(その1)
btnwait2画像ボタンを表示してクリック待ちする(その2)
cellcheckexbtnセルが二つ以上ある場合にスプライトを複合ボタンに指定する
cellcheckspbtnセルが二つ以上ある場合にスプライトをボタン画像に指定する
exbtn複合ボタンのボタン設定をする
exbtn_d複合ボタン使用時カーソルがどれにも重なっていない時の指定をする
getbtntimerbtnwaitを抜けるときどのくらい待ったか取得する
spbtnスプライトをボタン画像に指定する
transbtnボタン画像の透過部分をボタンとして無効にする
ウェイト・タイマー
!d指定時間待つ
!wクリック無視で指定時間待つ
delay時間待ちする(その1)
gettimer内部タイマの値を取得する
resettimer内部タイマーをリセットする
spwait指定したスプライト番号のアニメーションが終わるのを待つ
wait時間待ちする(その2)
waittimer内部タイマーが指定した時間を超えるまで待つ
計算式・変数
-引き算を行う
*掛け算を行う
/割り算を行う
+足し算を行う
add足し算する
atoi文字列を数値に変換
cos三角関数cosθを使う
dec1減らす
dim配列変数を宣言する
div割り算する
inc1増やす
intlimit変数の最大値と最小値を設定する
itoa数値を文字列に変換
itoa2数値を全角文字列に変換する
len文字列の長さを取得する
mid文字列から部分文字列を取得する
mod割ったあまりを出す
mov数値変数・文字変数に値を代入する
mov10複数の数値変数・文字変数に値を代入する
mov3複数の数値変数・文字変数に値を代入する
mov4複数の数値変数・文字変数に値を代入する
mov5複数の数値変数・文字変数に値を代入する
mov6複数の数値変数・文字変数に値を代入する
mov7複数の数値変数・文字変数に値を代入する
mov8複数の数値変数・文字変数に値を代入する
mov9複数の数値変数・文字変数に値を代入する
movl配列の行に対して一度に値を代入
mul掛け算する
numalias数値エイリアスをつくる
rnd乱数を作る(その1)
rnd2乱数を作る(その2)
sin三角関数sinθを使う
stralias文字列・ファイル名エイリアスを作る
sub引き算する
tan三角関数tanθを使う
条件式・ループ書式
breakforループから抜ける
cmp文字どうしを比較する
fchk指定する画像タグを読んでいるかどうか調べる
forループ命令
if条件判断する
lchk指定するラベルを読んでいるかどうか調べる
nextループ終端
notif条件判断する
右クリック機能設定
menuselectcolor右クリックメニューのテキストの文字の色を設定する
menuselectvoice右クリックメニューのシステム音の設定をする
menusetwindow右クリックメニューウインドウの設定をする
rgosub右クリック時の呼び出し先を設定する
rlookback右クリックしたとき回想モードにいくようにする
rmenu右クリックしたときメニューを表示する&メニューの設定をする
rmode右クリックメニューの有効・無効を切り替える
roff右クリックを無効にする
savename右クリックメニューのセーブファイル名を指定する
回想モード
lookbackbutton回想モードの矢印画像を指定する
lookbackcolor回想モードのテキストの色を指定する
lookbackflush回想バッファを消す
lookbackoff回想データの蓄積をやめる
lookbackon回想データを蓄積する
lookbackspバックログボタンがデフォルトのものではなくスプライトボタンになる
lookbackvoice回想モードでページをめくるときに音を鳴らす
maxkaisoupage回想モードの最大ページ数を設定する
既読スキップ
kidokumode既読スキップモードと強制スキップモードを切り替える
kidokuskip既読スキップ機能をONにする
mode_wave_demo「次の選択肢を飛ばす」の時でもWAVEを鳴らす
skipoff自動文字送り状態を解除する
ファイルアクセスログ・グローバル変数
filelogファイルアクセスログをとるようにする
globalonグローバル変数を使う設定にする
labellogラベルのログを取る
セーブ・ロード
autosaveoff表示文頭以外の自動のセーブポイント更新を停止する
errorsaveエラー時にセーブno999で自動セーブ
getsavestrsavegame2で保存した文字列を取り出す
loadgame指定したセーブ番号からロードする
loadgosubロード直後に呼び出すサブルーチンを指定する
savedirセーブデータを格納するフォルダを指定する
savefileexistセーブファイルがあるかどうか確認する
savegame指定した番号のセーブファイルにセーブする
savegame2セーブファイルそれぞれに固有の文字列を保存する
savenumberセーブの最大数を変更する
saveoffセーブモードをオフ
saveonセーブモードをオン
savepointセーブポイントを更新する
追加機能
addkinsoku禁則文字を追加する
addnsadirnsaアーカイブを読み込むディレクトリを追加する
clickposクリックしたときのカーソルの座標を取得する
clickskippageクリックによって改頁待ちまで一気に飛ぶようにする
defsub指定した名前のユーザ定義命令を作る
english英文を表示する
fileexistファイルの存在を確認する
fileremoveファイルを削除する
getparamユーザ定義命令の呼び出し元から、パラメータを取得
input文字列をプレイヤーに入力してもらう(その2)
inputnum数値をプレイヤーに入力してもらう
inputstr文字列をプレイヤーに入力してもらう(その1)
kinsoku禁則処理のオンオフを切り替える
labelexistラベルがあるかどうか確認する
menu_dwavvolボリューム変更ダイアログを表示する
mesboxメッセージボックスを出す
minimizewindowウィンドウを最小化する
noloaderror画像、音楽の読込失敗時にエラーを無視する
okcancelboxOK/キャンセルのダイアログボックスを表示
readfile文字変数にファイルの内容を読み込む
setkinsoku禁則文字を設定する
split文字列を指定記号を区切りにして切り出す
systemcall右クリックメニューのメニューと同じ動作をさせる
textcolor文字色を変更する
textfieldウィンドウ上にテキスト入力ウィンドウを開く
yesnoboxはい/いいえのダイアログボックスを表示
特殊モード設定
;$変数・ラベルの最大数、画面サイズを指定する
automode「オートモード」を使用する設定にする
automode_time「オートモード」でWAVEが鳴っていないときの時間設定
defbgmvolBGMデフォルトボリューム設定
defmp3volMP3デフォルトボリューム設定
defsevolSEデフォルトボリューム設定
defvoicevolVOICEデフォルトボリューム設定(新規命令)
mode_ext「銀色モード(オートモード)」を使用する設定にする
mode_saya「莢モード」を使用する設定にする
mode320画面サイズを320×240にする
mode400画面サイズを400×300にする
mode800画面サイズを800×600にする
valueローカル変数とグローバル変数の境目を変える
プラグイン・アーカイブ
arcアーカイブを使う
exec_dllDLLを呼び出す
getretDLLから返される値を取得する
layermessageレイヤにメッセージを送信する
nsaNSAアーカイブモードにする
nsadirNSAアーカイブがあるフォルダを指定する(追加分)
setlayerレイヤを設定する
soundpressplgin音楽圧縮プラグインを指定する(現在はDirectX命令で代用できる)
spi画像圧縮プラグインを指定する
情報表示
captionウインドウのタイトルを変更する
versionstrバージョン情報の文章を変更する
各種情報取得
date年、月、日を取得する
getiniiniファイルを参照する
getregレジストリを参照する
getversion実行しているNScripterのバージョンを取得する
getwindowsizeウィンドウのクライアント領域を取得する
savetime指定したセーブファイルをセーブした日付と時間を取得する
time時、分、秒を取得する
ウィンドウメニュー関連
!sddefultspeed命令で設定した文字表示スピードにする
defaultspeedメニューで選択できる文字表示スピードを指定する
deletemenuNScrからWindowsのメニューバーを消す
insertmenuメニューを挿入する
isfull現在フルスクリーンかどうかを取得する
killmenuメニューを消す
menu_click_def普通に表示するモードにする
menu_click_page1ページごとに表示するモードにする
menu_fullフルスクリーンモードにする
menu_windowウインドウ画面モードにする
resetmenuメニューをカスタマイズすることを宣言
システムカスタマイズ関連
*customselcselと対応するラベル
checkkeyキーの押下状態を取得する
cselシステムカスタマイズ時の選択肢命令
cselbtn選択肢のテキストでボタンを作る
cselgotocselで設定したラベルへ飛ぶ
getcselnumcsel選択肢の数を取得する
getcselstrcselで指定した文字列を取得する
getcursorposテキストカーソルの位置を取得する
getcursorpos2最後に表示した文字の左上座標を取得する
getmouseoverマウスカーソルがスプライトボタンに重なったことを検出する
getskipoffスキップ、オートモードのOFFを取得する
ispage改ページ待ちかどうかを取得する
isskip進行モードを取得する
luacallNScripterのデフォルト動作をLua関数で横取りする
luasubLua関数NSCOM_を呼び出す命令を定義する
nextcsel次の命令がcselである場合、1を返す
selectbtnwaitcustomsel時のクリック待ちをする
texec改ページ待ちの場合テキストを消去する
texec2改ページ待ちの場合テキストを消去する
textbtnwaitcustomwait時のクリック待ちをする
textgosubシステムカスタマイズ時通常文章のクリック待ちで飛んでくるラベル
スクリーンショット
deletescreenshotスクリーンショットを削除する
getscreenshotスクリーンショットを取得する
savescreenshotスクリーンショットを保存する
savescreenshot2スクリーンショットを保存する
ボタンモード拡張
btnareaカーソルが特定の領域に入ったことを検知する
btndownボタンの押しっぱなしを取得できるようにする
getcursorカーソル上右下左で-40,-41,-42,-43を取得する
getenterリターンキーを押されたときに-19を取得する
getfunctionF1~F12を押されたときに-21~-32を取得する
getinsertInsertキーをボタンモードで拾えるようにする
getmclickマウスの中ボタンクリックを取得する
getmouseposマウスカーソルの座標を取得する
getpagePageUp PageDownをボタンモードで拾えるようにする
gettabtabキーを押したときに=-20を取得する
getzxcz,x,cキーをボタンモードで拾えるようにする
isdownボタン押下中かどうかを判定する
spclclkスペースバーを左クリックと同じ動作にする
useescspcボタン命令でescボタンとspcボタンを使う設定にする
usewheelボタン命令でホイールを使う設定にする
ルビ関連
()ルビ有りを示す
rubyoffルビモードをオフにする
rubyonルビモードにする
rubyon2その行にルビがあるときだけルビ表示モードにする
デモ用命令
drawdraw系命令で描画した画像を実画面に転送する
drawbgBG画面を描画する
drawbg2BG画面を描画する
drawclear画面を黒く塗りつぶす
drawfill画面をその色で塗りつぶす
drawspスプライトを描画する
drawsp2スプライトを描画する
drawsp3一次変換してスプライトを描画する
drawtextテキストウィンドウを描く
バックログカスタマイズ
checkpage回想文字列を取得できるかどうかを調べる
getlogバックログ用の文字列を取得する
getlogtextバックログ用の文字列を取得する(strsp用)
gettaglog指定した数だけ前のページのタグを取得する
logspバックログ用の文字画像をスプライトとして取得する
logsp2バックログ用の文字画像をスプライトとして取得する
texthideテクストウィンドウは表示したままで、文字だけを消す
textshowtexthideで消した文字を復帰する
文章タグ関連
[]表示直前にgettagで取得できる情報の指定する
gettagpretextgosub指定サブルーチンからタグの内容を取得する
indent改行時に指定文字数だけ右インデントさせる
pretextgosubテキスト表示の直前にサブルーチンへジャンプ
zenkakko【】をタグ指定として定義する
開発支援
bmpcut画像ファイルを分割してBMP形式で保存する
bw2aNScripter形式の透過画像を作る
bw2a3NScripter形式の透過画像を作る
chainbmp画像ファイルを結合する
createdummyダミーの画像ファイルを作成する
debuglogデバッグログを保存する
外部コマンド実行
shellエクスプローラーからファイルを実行する
winexec外部実行ファイルを実行する
CSVファイル操作
csvcloseCSVファイルを閉じる
csveofCSVファイルの終端まで辿りついたかどうかを判定する
csvopenCSVファイルを開く
csvreadCSVファイルからデータを読み出す。
csvwriteCSVファイルにデータを書き込む。
テキストボタン
<>テキストボタンに設定する
erasetextbtnテキストボタンの押下状態を解除する
gettextbtnstrテキストボタン番号に対応した文字列を取得する
linkcolorテキストボタンの色を設定する
textbtnoffテキストボタンのボタン定義を無効にする
textbtnstartテキストボタン番号を省略したときの先頭の値を指定する
textexbtnテキストボタンでexbtnと同様の処理をする
拡張スプライト
allsp2hide拡張スプライト全体を一時的に非表示とする
allsp2resume拡張スプライト全体の一時的な非表示を解除する
amsp2拡張スプライトを絶対移動する
csp2拡張スプライトを消去する
lsp2拡張スプライトを表示状態でロードする
lsp2add拡張スプライトを表示状態の加算合成でロードする
lsp2sub拡張スプライトを表示状態の減算合成でロードする
lsph2拡張スプライトを非表示状態でロードする
lsph2add拡張スプライトを非表示状態の加算合成でロードする
lsph2sub拡張スプライトを非表示状態の減算合成でロードする
msp2拡張スプライトを相対移動する
vsp2拡張スプライトの表示/非表示を切り替える
新画像ボタン
bclearボタン定義をクリアする
bcursorボタンでカーソルキー入力を取得する
bdefどのスプライトとも重なっていないときの処理を指定する
bdownボタンの押しっぱなしを取得できるようにする
bexecボタン処理を実行する
bspスプライトをボタンとして設定する
btimeボタン処理を開始してからタイムアウトする時間を指定する
btransボタン画像の透過部分をボタンとして無効にする

Ver.2.48【定義節・実行節両用】
まいなす
-

計算式・変数

NUM'-'NUM

数値計算する数値
数値計算する数値

後ろの数値を、前の数値から引きます。
命令の引数として計算結果が使われます。

例)

sub /
page top / list / main

Ver.2.48【特殊文字】
ばんでぃー、えくすくらめーしょんでぃれい
!d

ウェイト・タイマー

!dNUM

数値待機する時間(ミリ秒)

数字x1ミリ秒分待ちます。クリックで飛ばせます。
数字は普通の数字でなければなりません。変数を使いたいときは、
delay命令を使ってください。

例)

/
page top / list / main

Ver.2.48【特殊文字】
ばんえす、えくすくらめーしょんすぴーど
!s

テキスト表示

!sNUM

数値一文字あたりの表示速度(ミリ秒)

一文字あたりの表示速度をミリ秒単位で指定します。
数字は普通の数字でなければなりません。変数を使いたいときは、
textspeed命令を使ってください。

例)

/
page top / list / main

Ver.2.48【特殊文字】
ばんえすでぃー、えくすくらめーしょんすぴーどでふぉると
!sd

ウィンドウメニュー関連

!sd

上のメニューから選ばれた、「低速」「普通」「高速」の文字速度にあわせます。それが数字で何にあたるのかはdefaultspeed命令で設定できます。

例)

/
page top / list / main

Ver.2.48【特殊文字】
ばんだぶりゅー、えくすくらめーしょんうぇいと
!w

ウェイト・タイマー

!wNUM

数値待機する時間(ミリ秒)

数字x1ミリ秒分待ちます。クリックで飛ばせません。
数字は普通の数字でなければなりません。変数を使いたいときは、
wait命令を使ってください。

例)

/
page top / list / main

Ver.2.48【特殊文字】
しゃーぷ、からーこーど
#

テキスト表示

#rrggbb

文字の色を変えます。HTMLで指定するのと同じ形式です。
(つまり、16進数で二桁づつ6ケタで指定、ということ。
 #000000が黒、#ffffffが白、#ffffaaが、白っぽい黄色になります。)
変えたら以後変わりっぱなしなので注意してください。

例)

/
page top / list / main

Ver.2.48【特別定義語】
どる、だらー
$

スクリプト書式関連

'$'NUM

数字変数番号(0~4095)

文字変数$0~$999まで1000個存在します。
0番から199番までが普通の変数で、200番から999番までがグローバル変数です。
普通の変数は、ゲームを終了する、もしくはreset命令などで動作を最初に戻すと値が消えますが、グローバル変数は消えません。
普通の変数の値は、セーブ時にセーブファイルに記憶され、ロード時にその値が復元しますが、グローバル変数ではそうなりません。
具体的には、例えば、普通の変数は好感度に、グローバル変数はクリアフラグに、といった使い方がいいでしょう。
ただし、グローバル変数を使う場合は、命令globalonを定義ブロックで実行しておかなくてはなりません。
文字変数の初期値は""(一文字もない)です。

例)
変数0に"文字列"を代入する
mov $0,"文字列"
例)
変数0の文字列をスプライトとして利用する
lsp 0,":s;#ffffff" + $0,0,0

% / value /
page top / list / main

Ver.2.48【特殊文字】
どる、だらー
$

文字・数字・バー表示

$NUM

数値変数番号

通常は文字変数ですが表示文中にあればその文字変数の中身を表示します。

例)

/
page top / list / main

Ver.2.48【特別定義語】
ぱーせんと
%

スクリプト書式関連

'%'NUM

数字変数番号(0~4095)

数字変数%0~%999まで1000個存在します。
0番から199番までが普通の変数で、200番から999番までがグローバル変数です。
普通の変数は、ゲームを終了する、もしくはreset命令などで動作を最初に戻すと値が消えますが、グローバル変数は消えません。
普通の変数の値は、セーブ時にセーブファイルに記憶され、ロード時にその値が復元しますが、グローバル変数ではそうなりません。
具体的には、例えば、普通の変数は好感度に、グローバル変数はクリアフラグに、といった使い方がいいでしょう。
ただし、グローバル変数を使う場合は、命令globalonを定義ブロックで実行しておかなくてはなりません。
数字変数の初期値は0です。

例)
変数0に1を代入する
mov %0,1
例)
変数0の数値をスプライト番号として利用する
lsp %0,":s;#ffffff文字列",0,0

$ / value /
page top / list / main

Ver.2.48【特殊文字】
ぱーせんと
%

文字・数字・バー表示

%NUM

数値変数番号

通常は数字変数ですが表示文中にあればその数字変数の中身を表示します。

例)

/
page top / list / main

Ver.2.48【特殊文字】
るび、しょうかっこ
()

ルビ関連

'('STR'/'STR')'

文字列ルビを振る単語
文字列ルビ

ルビ有りを示す

例)
サンプルスクリプト
*define
rubyon
game
*start
setwindow 10,10,20,20,24,24,0,12,0,1,1,#ffffff,0,0,639,479
ルビ機能の(暫定仕様/ざんていしよう)です。@
rubyon時、(文字/もじ)は(下詰/したづめ)で表示されます。@
(縦/たて)の(字間/じかん)を、ルビが入る分とって下さい。@
「(承/うけたまわ)」る、とか、「(論理的/ロジカル)」みたいに、文字幅をあわせようとする機能がついてます。
ルビは折り返し改行されませんのでご注意ください。\
end

rubyoff / rubyon /
page top / list / main

Ver.2.48【特別定義語】
あすたりすく
*

スクリプト書式関連

'*'NAME

名前ラベル名

*で始まる文はラベル名です。gotoなどの飛び先として使います。
ラベル名に使える単語の一文字目は半角のアルファベットと"_"(アンダーライン)、それ以降はアルファベット"_"(アンダーライン)数字の組み合わせです。

  正しい例) *HAJIMARI
         *Mike_Tom
         *day01

  誤った例) *始まり  (全角文字を使っている)
         *Mike&Tom (アンダーライン以外の記号を使っている)
         *01day   (一文字目から数字)

ハイフン"-"は使えません。"_"はアンダースコアやアンダーバーとも言うことがあります。
また、大文字小文字は区別しませんので"*HAJIMARI"と"*hajimari"は同じものと見なされます。(by senzogawa)
例)
ラベルasteriskを定義する
*asterisk

gosub / goto /
page top / list / main

Ver.2.48【定義節・実行節両用】
あすたりすく
*

計算式・変数

NUM'*'NUM

数値計算する数値
数値計算する数値

後ろの数値を、前の数値と掛けます。
命令の引数として計算結果が使われます。

例)

mul /
page top / list / main

Ver.2.48【特別定義語】
かすたむせる、かすたむせれくと
*customsel

システムカスタマイズ関連

*customsel

csel命令を実行すると、自動的にこのラベルにジャンプする。このラベル後に選択肢表示の処理を実装する。

例)
csel用の処理を実装する
*customsel
skipoff
*csel_st
btndef clear
getcselnum %0
getcursorpos %1,%2
cselbtn 0,500,%1,%2
add %2,21
cselbtn 1,501,%1,%2
if %0>2 add %2,21:cselbtn 2,502,%1,%2
if %0>3 add %2,21:cselbtn 3,503,%1,%2
if %0>4 add %2,21:cselbtn 4,504,%1,%2

*csel_loop
selectbtnwait %0
if %0=-2 systemcall lookback:goto *csel_loop
if %0=-1 gosub *rclk:goto *csel_st
if %0>=500 & %0<=504 saveon:sub %0,500:cselgoto %0
goto *csel_loop

csel / cselbtn / cselgoto / getcselnum / getcselstr / selectbtnwait /
page top / list / main

Ver.2.48【特別定義語】
でぃふぁいん
*define

ゲームスタート・リセット・終了

*define

定義ブロック開始を示す特殊なラベルです。

例)
何もしない定義ブロックを記述する
*define
game

definereset / game /
page top / list / main

Ver.2.48【特別定義語】
すたーと
*start

ゲームスタート・リセット・終了

*start

実行ブロック開始を示す特殊なラベルです。

例)
何もしない実行ブロックを記述する
*start
end

game /
page top / list / main

Ver.2.48【特殊文字】
すらっしゅ
/

スクリプト書式関連

/

これのすぐ後に改行を書けば、その改行は無視されます。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
すらっしゅ
/

計算式・変数

NUM'/'NUM

数値計算する数値
数値計算する数値

前の数値を、後ろの数値で割ります。
命令の引数として計算結果が使われます。

例)

div /
page top / list / main

Ver.2.48【特別定義語】
ころん
:

スクリプト書式関連

:

:(コロン)でつなげることによって、一行にたくさんの命令文を書くことができます。これは、if文で威力を発揮します。

例)
右クリックされた場合、全てのスプライトを非表示にしてから回想シーンを呼び出す。
btnwait %0
if %0=-1 allsphide:systemcall lookback

/
page top / list / main

Ver.2.48【特別定義語】
せみころん
;

スクリプト書式関連

;

;で始まる文はコメントです。NScripterはこの文を読み飛ばします。

例)
abs命令についてコメントを記述する
defsub abs ; 渡された変数を絶対値に変換する

/
page top / list / main

Ver.2.96【特別定義語】
せみころんだらー
;$

特殊モード設定

'V'NUM'G'NUM'S'NUM,NUM'L'NUM

数値変数の総数(0から数値-1が変数番号,初期値4096)
数値グローバル変数との境界(初期値200)
数値画面幅(初期値640)
数値画面高さ(初期値480)
数値ラベルの最大数(ファイルログの最大数,初期値10000)

以下の設定は、大文字小文字を区別しません。
一行目に;$で、その行は設定モードになります。
V数 で変数の数を設定します。0スタートなので、与えた数-1が最大の変数番号になります。
G番号 で最小のグローバル変数の番号を設定します。
S幅,高さ で画面サイズを指定します。ワイドスクリーンでもいけます。
L数 でラベルの最大数を設定します。この数値はファイルログの最大数も兼ねています。初期値10000なので、よほどの事がない限りいじる必要はないかと。

初期値のままで良い内容は記述しなくてもエラーにはなりません。
「VGSL」と数値または「,」の間に半角スペース等を入れるとエラーになりますが、「V2000 G1000 S800,600」のように一つの指定で区切ることはできるようです。
ラベルの最大数は*defineと*startを含むようなので、実質的には最大数-2を任意に定義できます。
画面サイズを変えた場合でも、テキストエリアのサイズは追従しません。(by senzogawa)
例)
変数の総数を2000、1000からグローバル変数、画面サイズを800x600、ラベル最大数を10000とする
;$V2000G1000S800,600L10000

mode320 / mode400 / mode640 / mode800 / value /
page top / list / main

Ver.2.48【特別定義語】
はてな、くえすちょんまーく
?

スクリプト書式関連

'?'NUM

数字変数番号(0~199)

配列変数を使うにはdim命令を使います。
配列変数は?0~?199まで200個定義できます。
グローバル変数として使うことはできません。

例)

/
page top / list / main

Ver.2.48【特殊文字】
あっと、あっとまーく
@

クリック待ち

@

クリック待ちをします。

例)

\ /
page top / list / main

Ver.2.48【特殊文字】
たぐ、だいかっこ
[]

文章タグ関連

'['STR']'

文字列表示直前に渡す情報。'/'で区切る

表示直前にgettagで取得できる情報を指定できます。

例)
台詞の表示直前に、「太郎」,「0001.wav」をgettagで取得できるように設定する
[太郎/0001.wav]「太郎の台詞」

gettag / pretextgosub /
page top / list / main

Ver.2.48【特殊文字】
あんだーすこあ
_

クリック待ち

_

これのすぐ後に改行を書けば、その改行は無視されます。

例)

/
page top / list / main

Ver.2.48【特殊文字】
ちゅうかっこ
{}

スクリプト書式関連

'{'$VAR|%VAR,STR|NUM[,...]'}'

変数値を格納する文字変数または数字変数
特殊前が文字変数ならば文字列、数字変数ならば数値

表示文字列の中で変数に値を代入できるようになりました。
{}で囲んで、その中で変数名,値を指定すると、その値が変数に代入されます。
ただし、エイリアスは使えません。
{変数名,値,変数名,値}のように、複数個書くと、それらの代入操作が全て実行されます。

例)

/
page top / list / main

Ver.2.48【特別定義語】
ちるだ
~

スクリプト書式関連

~

jumpf命令とjumpb命令で使う飛び先です。
jumpf命令、jumpb命令と~記号の間には表示文章を置かないようにしてください。

例)

jumpb / jumpf /
page top / list / main

Ver.2.48【特殊文字】
えん、いぇん
\

クリック待ち

\

改ページ待ちをします。直後の改行は無視されます。

例)

@ /
page top / list / main

Ver.2.48【定義節・実行節両用】
ぷらす
+

計算式・変数

NUM'+'NUM

数値計算する数値
数値計算する数値

STR'+'STR

文字列連結対象の文字列
文字列連結する文字列

後ろの数値または文字列を、前の数値または文字列を足します。
数値同士、文字列同士でないとエラーとなります。
命令の引数として計算結果が使われます。

例)
配列変数0のインデックス0の内容に1を足す。
mov ?0[0],?0[0]+1
例)
$1に"●"を代入し、"あいうえお"、$1、"さしすせそ"を順に連結した文字列を$2に代入する。
mov $1,"●"
mov $2,"あいうえお"+$1+"さしすせそ"
;これで、$2は"あいうえお●さしすせそ"になります。
例)
$0に"テスト"を代入し、$0と"あいうえお"を連結した文字列を$0に代入する。
mov $0,"テスト"
mov $0,$0+"あいうえお"
;これで$0は"テストあいうえお"になります。

add /
page top / list / main

Ver.2.48【特殊文字】
しょうなりだいなり、てきすとぼたんたぐ
<>

テキストボタン

'<'[INT]STR'>'

数値テキストボタン番号
文字列テキストボタン化する文字列

<と>で囲んだ文字列をテキストボタンに設定します。
テキストボタン番号は省略可能です。

例)

erasetextexbtn / gettextbtnstr / linkcolor / textbtnstart / textexbtn /
page top / list / main

Ver.2.48【実行節のみ】
えいびーえすせっとかーそる、あぶそりゅーとせっとかーそる
abssetcursor

カーソル

abssetcursor NUM,STR,NUM,NUM

数値カーソル番号(0:クリック待ち、1:改ページ待ち)
文字列カーソル画像ファイル
数値カーソル表示位置を右方向に動かす量
文字列カーソル表示位置を下方向に動かす量

setcursorとほぼ同じなのですが、こちらの座標指定は、文字との相対座標ではなく、画面上の絶対座標としての指定です。

例)

setcursor /
page top / list / main

Ver.2.48【定義節・実行節両用】
あど
add

計算式・変数

add %VAR,NUM

数字変数数値の演算先
数値演算する数値

add $VAR,STR

文字変数文字列の連結先
文字列連結する文字列

変数に変数を加えます。文字の場合は連結です。

例)
%0の数値に6を加算する。
add %0,6
例)
$5の文字列に"ああああ"を連結する。
add $5,"ああああ"

/
page top / list / main

Ver.2.70【定義節のみ】
あどきんそく
addkinsoku

追加機能

addkinsoku STR,STR

文字列行頭禁則文字列
文字列行末禁則文字列

文字列を、行頭禁則文字列,行末禁則文字列の順で指定することで、
現在の禁則文字列に設定を追加します。define節専用です。

一文字だけでも設定できますし、複数並べれば、
それらが全て禁則文字になります。

例)

setkinsoku /
page top / list / main

Ver.2.48【定義節・実行節両用】
あどえぬえすえーでぃーあいあーる、あどえぬえすえーでぃれくとり
addnsadir

追加機能

addnsadir STR

文字列追加するディレクトリ名

nsaアーカイブを読み込むディレクトリを追加します。

例)

nsadir /
page top / list / main

Ver.2.80【実行節のみ】
おーるえすぴーつーはいど、おーるすぷらいとつーはいど
allsp2hide

拡張スプライト

allsp2hide

拡張スプライト全体の表示を一時的にマスクすることが出来ます。allsphide allspresumeと使い方は同じです。

例)

allsp2resume / allsphide / allspresume /
page top / list / main

Ver.2.80【実行節のみ】
おーるえすぴーつーれじゅーむ、おーるすぷらいとつーれじゅーむ
allsp2resume

拡張スプライト

allsp2resume

拡張スプライト全体の表示を一時的にマスクすることが出来ます。allsphide allspresumeと使い方は同じです。

例)

allsp2hide / allsphide / allspresume /
page top / list / main

Ver.2.48【実行節のみ】
おーるすぷらいとはいど、おーるえすぴーはいど
allsphide

画像表示

allsphide

すべてのスプライトを一時隠します

例)
すべてのスプライトを一時隠します
allsphide

allspresume /
page top / list / main

Ver.2.48【実行節のみ】
おーるすぷらいとれじゅーむ、おーるえすぴーれじゅーむ
allspresume

画像表示

allspresume

allsphideで隠したスプライトを表示します

例)
allsphideで隠したスプライトを表示します
allspresume

allsphide /
page top / list / main

Ver.2.48【実行節のみ】
えむえすぴー、あぶそりゅーとむーぶすぷらいと
amsp

画像表示

amsp NUM,NUM,NUM[,NUM]

数値スプライト番号(0~255)
数値左上X座標
数値左上Y座標
数値不透過度(0~255)

mspと似ているが、こちらは増分ではなく絶対指定。

例)
スプライト2番を、(5,2)に移動し、不透過度は100にする。
amsp 2,5,2,100

msp /
page top / list / main

Ver.2.80【実行節のみ】
えいえむえすぴーつー、あぶそりゅーとりぃむーぶすぷらいとつー
amsp2

拡張スプライト

amsp2 NUM,NUM,NUM,NUM,NUM,NUM[,NUM]

数値拡張スプライト番号
数値中心X座標
数値中心Y座標
数値X拡大率
数値Y拡大率
数値回転角
数値不透過度

拡張スプライトの移動命令です。msp2は現在値からの相対指定、amsp2は値そのものの指定です。

例)
拡張スプライト0番を中心座標10,20に移動し、拡大率を横、縦に10%として、5度ずらす。
amsp2 0,10,20,10,10,5

amsp2 / csp2 / lsp2 / lsp2add / lsph2 / lsph2add / vsp2 /
page top / list / main

Ver.2.48【定義節のみ】
えいあーるしー、あーく、あーかいぶ
arc

プラグイン・アーカイブ

arc STR

文字列プラグインの指定

アーカイブ展開プラグインを指定します。
書式は、"アーカイブファイル名|関連付けDLL名"です。
画像、音声はアーカイブ対応していますが、スクリプトはしていません。

レジストリを読みに行く命令と組み合わせることで、いろいろな指定ができるようになります。

例)
アーカイブファイル名として"arc.sar"、関連付けファイルとして"scrunarc.dll"を指定する。
arc "arc.sar|scrunarc.dll"
例)
To Heartのインストールされたマシンの、レジストリ情報を読み取って、アーカイブ指定する。
getreg $0,"software\leaf\toheart","datadir"
add $0,"\lvns3dat.pak|axlfpak.spi"
arc $0

/
page top / list / main

Ver.2.48【定義節・実行節両用】
えいとぅあい、いんたじゃーとぅあすきー
atoi

計算式・変数

atoi %VAR,STR

数字変数結果の代入先
文字列数値にする文字列

文字列を数字に変換します。C言語の同名関数と同じです。

全角の数字は変換できません。(by senzogawa)
例)
"123"を数値にした値を%0に、$0の内容を数値にした値を%3にそれぞれ代入する。
atoi %0,"123"
atoi %3,$0

/
page top / list / main

Ver.2.48【実行節のみ】
おーとくりっく
autoclick

クリック待ち

autoclick NUM

数値クリック待ち時間(ミリ秒)

クリック待ちが指定時間(ミリ秒)たつと勝手に進むようになる、デモなどに便利な命令です。
0を指定すれば、設定が無効になります。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
おーともーど
automode

特殊モード設定

automode

商用ソフト「銀色」のために作った命令です。
この命令を実行すると、メニューに「オートモード」がつきます。
オートモードは「次の選択肢まで進む」に似ていますが、ウェーブが
なりおわるまで先には進まず、ウェーブがないところでも、下のautomode_time命令で
どのくらいクリックまでに待つか指定することが出来ます。
いわゆる読み上げモードですね。

メニューからボリューム変更ダイアログが
使えるようになる。(MP3(BGM) voice(DWAVE 0) SE(DWAVE 1~)のボリュームを
いじれるようになりました。)
この辺の拡張機能の追加についてはもうちょっとすっきりした命令を作る予定
(今有効な命令は将来的にもちゃんと使えます。)

例)

/
page top / list / main

Ver.2.48【定義節のみ】
おーともーどたいむ
automode_time

特殊モード設定

automode_time NUM

数値自動進行時の待ち時間(ミリ秒)

上のmode_extで増える「オートモード」のとき、ウェーブがなっていないときに どのくらい待つのかをミリ秒単位で指定します。

例)

/
page top / list / main

Ver.2.93【定義節のみ】
おーとせーぶおふ
autosaveoff

セーブ・ロード

autosaveoff

表示文頭以外の自動のセーブポイント更新を停止します。
*define節で
autosaveoff
とすることで、saveon/saveoff命令は無視されるようになります。
(表示文頭ではセーブポイントは従来通り更新されます)。
表示文頭以外でセーブさせたい場合(たとえばクリッカブルマップなど)では、手書きでsavepoint命令を呼び出してください。タイミングによってはデータがうまく復帰できなかったりするので、画面全体を読み込んで描画する直前をセーブポイントにするとか、うまく工夫してください。

例)

saveoff / saveon / savepoint /
page top / list / main

Ver.2.48【実行節のみ】
えいぶいあい
avi

動画再生

avi STR,NUM

文字列ファイル名
数値中断可否フラグ(0:最後まで再生、1:クリックで中断)

指定AVIファイルを画面一杯に再生します。
数字が1のときは、クリックすれば再生を中止して、次の処理へ移ります。
0のときには、最後まで再生し終わるまで、処理をスクリプトに戻しません。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
ばー
bar

文字・数字・バー表示

bar NUM,NUM,NUM,NUM,NUM,NUM,NUM,COLOR

数値バー番号
数値現在値
数値表示位置左上X座標
数値表示位置左上Y座標
数値バー幅
数値バー高さ
数値バー最大値
色値バーを塗りつぶす色

バー表示指定をします。幅と高さは、バーが最大値であったときの値です。
 最大値に満たない場合は、割合に合わせてバーが短くなります。
 バーは左詰表示です。単純に長さにあわせて指定した色で塗りつぶすだけなので、
 値が足りないときの地の色は、元絵のほうで描いてしておいてください。
 なお、指定した後でprint命令などの表示処理を実行しないと、画面に反映されません。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
ばーくりあ
barclear

文字・数字・バー表示

barclear

バーの設定をクリアします。 バーとは、格闘ゲームの体力バーみたいなもののことです。

例)

/
page top / list / main

Ver.2.93【実行節のみ】
びーくりあ、ぼたんくりあ
bclear

新画像ボタン

bclear

ボタン定義をクリアする。

例)
ボタン定義をクリアする。
bclear

btndef /
page top / list / main

Ver.2.94【実行節のみ】
びーかーそる、ぼたんかーそる
bcursor

新画像ボタン

bcursor

デフォルトではbexecはカーソルキーとスペース/リターンをボタン間の移動とボタンの決定に使うようになりました。
カーソルキー入力を得たい場合はbclearとbexecの間にbcursor命令を入れてください。

例)

getcursor /
page top / list / main

Ver.2.93【実行節のみ】
びーでふ、ぼたんでふぉると
bdef

新画像ボタン

bdef STR

文字列デフォルト制御文字列

どのスプライトとも重なっていないときの処理を指定する。これもexbtnやspstrに指定するのと同じ文字列

例)
どのスプライトとも重なっていないときの処理を指定する。
bdef "C0" ;どれとも重なっていない場合はスプライト0番を非表示にする。

exbtn_d /
page top / list / main

Ver.2.94【実行節のみ】
びーだうん、ぼたんだうん
bdown

新画像ボタン

bdown

bclear命令とbexec命令の間にbdown命令を入れると、左クリックを押し下げたときに処理が戻るようになりました。

例)

btndown /
page top / list / main

Ver.2.93【実行節のみ】
びーえぐぜく、ぼたんえぐぜきゅーと
bexec

新画像ボタン

bexec $VAR[,%VAR]

文字変数入力結果
数字変数入力結果(0以上:スプライト番号、-1:それ以外)

ボタン処理を実行する。引数は文字列変数と数値変数、もしくはその両方が選べる。

bclearを実行するまで設定は残っている。
btimeを実行するまでは経過時間とタイムアウト時間の設定も残っている。

文字列変数に戻る値:
どのスプライトでもないところが左クリックされた場合……"LCLICK"が返ります。
スプライトが左クリック場合……"S(スプライト番号)"が返ります。たとえばスプライト12番なら"S12"が返ります。
タイムアウトした場合……"TIMEOUT"が返ります。
右クリックされた場合……"RCLICK"が返ります。
中クリックされた場合……"MCLICK"が返ります。
ホイールアップ/ダウンされた場合……"WHEELUP" "WHEELDOWN"が返ります。
キーが押された場合……それぞれに対応した文字列が返ります。英字は大文字で返ります。
 ・英字1文字、数字はそのまま返ります。
 ・"SPACE" スペースキー
 ・"RETURN" リターンキー
 ・"CTRL" コントロールキー
 ・"UP" "DOWN" "LEFT" "RIGHT" カーソルキー上下左右
 ・"F1"~"F12" ファンクションキー
 ・"PAGEUP" "PAGEDOWN" ページアップ、ダウンキー
 ・"SHIFT" シフトキー

数値変数に戻る値:
スプライトが押されたときにそのスプライト番号を得る。それ以外の場合は-1が返る。

どの値が入力されても戻るので、必要のない値を受け取った場合はbexecに処理を戻してループすること。

2009/04/22版より、中クリックを取得可能。
ver.2.93ではMCLICKではなくCCLICK。
ver.2.94でデフォルトではカーソルキーとスペース/リターンをボタン間の移動とボタンの決定に使うように変更。
例)
ボタン処理を実行し、文字列と数値変数に結果を受け取る。
bexec $0,%0

btnwait /
page top / list / main

Ver.2.48【実行節のみ】
びーじー、ばっくぐらうんど
bg

画像表示

bg STR,EFFECT

文字列ファイル名
エフェクト背景表示時のエフェクト

bg COLOR,EFFECT

色値背景を塗りつぶす色
エフェクト背景表示時のエフェクト

bg {black,white},EFFECT

列挙背景を黒又は白で塗りつぶす
エフェクト背景表示時のエフェクト

背景画像をロードします。一番上がファイルから、二つ目が単色での塗りつぶし指定、一番下が、黒、もしくは白での塗りつぶし指定です。

例)
例)
例)

bgalia / effect /
page top / list / main

Ver.2.48【定義節のみ】
びーじーありあ、びーじーえりあ
bgalia

画像表示

bgalia NUM,NUM,NUM,NUM

数値左上X座標
数値左上Y座標
数値画像幅
数値画像高さ

特殊なサイズの背景を使いたいときに指定します。
x,yの位置から、width x heightドットの画像を置く、ということになります。

例)

bg /
page top / list / main

Ver.2.50【実行節のみ】
びーじーこぴー、ばっくぐらうんどこぴー
bgcopy

画像表示

bgcopy

bgcpyでも同じ意味になります。現在の画面を背景画面として取り込みます。
ofscpyもしくはofscopyとの違いは、背景画面になっているので、この上にテキストウィンドウなどを表示できることです。

ver.2.51で、この命令で作った背景画像はセーブでちゃんと保存されるようになりました。
例)

draw /
page top / list / main

Ver.2.48【実行節のみ】
びーじーえむ
bgm

音楽・SE演奏

bgm STR

文字列演奏するファイル名

圧縮された音楽ファイルをループで演奏する。mp3loop命令と同じ意味です。

ver.2.93でこの命令でogg volvis形式を演奏する場合はnsogg2.dllが必要です。(by senzogawa)
nsogg.dll,nsogg2.dll使用時はbgm "(曲先頭からの時間)ファイル名"でループ時に戻る点を指定できます。
単位は秒です。小数が指定できます。
例)
"bgm01.mp3"をループ演奏する
bgm "bgm01.mp3"

bgmonce / bgmvol /
page top / list / main

Ver.2.48【定義節・実行節両用】
びーじーえむだうんもーど
bgmdownmode

音楽・SE演奏

bgmdownmode NUM

数値1ならON

音声再生時にBGMボリュームを下げる。

例)
音声再生時にBGMボリュームを下げる。
bgmdownmode 1

/
page top / list / main

Ver.2.48【定義節・実行節両用】
びーじーえむふぇいどいん
bgmfadein

音楽・SE演奏

bgmfadein NUM

数値フェードインする時間(ミリ秒)

bgmfadeoutと同じ要領で、フェードインの設定をします。

例)

bgmfadeout /
page top / list / main

Ver.2.48【定義節・実行節両用】
びーじーえむふぇいどあうと
bgmfadeout

音楽・SE演奏

bgmfadeout NUM

数値フェードアウトする時間(ミリ秒)

BGMのフェードアウトの時間を指定
define節でも実行節でも使えます。

例)

bgmfadein /
page top / list / main

Ver.2.48【実行節のみ】
びーじーえむわんす
bgmonce

音楽・SE演奏

bgmonce STR

文字列演奏するファイル名

圧縮された音楽ファイルを一度だけ演奏する。mp3と同じ意味です。

ver.2.93でこの命令でogg volvis形式を演奏する場合はnsogg2.dllが必要です。(by senzogawa)
例)
"bgm01.mid"を一度だけ演奏する
bgm "bgm01.mid"

bgm / bgmvol /
page top / list / main

Ver.2.48【実行節のみ】
びーじーえむすとっぷ
bgmstop

音楽・SE演奏

bgmstop

圧縮された音楽ファイルの演奏を停止します。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
びーじーえむぼる、びーじーえむぼりゅーむ
bgmvol

音楽・SE演奏

bgmvol NUM

数値ボリューム(0~100)

bgmのボリュームを変えます。bgm命令とmp3命令で有効です。

セーブはされませんので、手動で管理してください。
play命令には影響しません(by senzogawa)
nsogg.dll,nsogg2.dll使用時はセーブされるようになった模様。
例)
bgmの音量を100にします(0-100)
bgmvol 100

chvol / mp3vol / sevol / voicevol /
page top / list / main

Ver.2.48【実行節のみ】
びーえるてぃー、ぶりっと
blt

画像表示

blt NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM

数値画面上の表示位置X座標
数値画面上の表示位置Y座標
数値画面上の表示幅
数値画面上の表示高さ
数値ボタン画像上のX座標
数値ボタン画像上のY座標
数値ボタン画像上の幅
数値ボタン画像上の高さ

高速に画面上で画像表示をしたいとき(AIRのオープニングのようなアニメーション処理)に使う命令です。
 ボタン画像バッファを利用しますので、事前にbtndefで画像を読みこんでください。
 ボタン画像から読んでくる元画像の幅が画面上の幅と違うときは、画面にあわせて画像が拡大縮小されます。
(例えば、全画面のXY半分のサイズの画像を4つ描いたものをロードしておいて、高速に拡大しながら画面全体に表示していくと、残像効果でドットの荒さは見えず高速なアニメに見える、というテクニックがAIRでは使われています。)
 この命令はバッファを介さず直接スクリーンに画像を書きます。よって、終わった後は画面データが不定になるので、下のofscpy命令を使った後、必ず別の画像をふつうのbg命令などで呼び出して、画像を確定してください。

 セーブによっても、この命令の結果としての画像がセーブされたりはしません。
 よって、使われる部分は限られてきます。(デモとか、SLGでの小窓アニメなど、間にセーブやコマンド入力が挟まれないような処理)

例)

ofscpy /
page top / list / main

Ver.2.48【実行節のみ】
びーえむぴーかっと、びっとまっぷかっと
bmpcut

開発支援

bmpcut STR,NUM,NUM

文字列画像ファイル名
数値横分割数
数値縦分割数

画像ファイルを指定された分割数に分割してBMP形式で保存します。

ファイル名を投げやりにつけるので注意。
例)
test.bmpを横3縦2に分割してBMP形式で保存します。
bmpcut "test.bmp",3,2

/
page top / list / main

Ver.2.48【実行節のみ】
びーあーる、ぶれいく
br

テキスト表示

br

一行、文字表示を改行する命令です。空行をはさみたいときに使ってください。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
ぶれーく
break

条件式・ループ書式

break

一番内側のループをひとつ、途中で抜け出します。
すぐ下のNEXT文を探し、その下へ抜けます。

二重ループを一気に外まで抜けることはできません。
一重めのループをBREAKで抜けた後、さらに次のBREAKを書いてください。

【お勧めしない使い方】
BREAK *ラベル名
BREAK文に*ラベル名があればそのラベルに飛びます。
ただし、ラベル指定でふたつのループを抜けても内部的には
一番内側のひとつしかループ状態を解除しません。
先述のとおり、そういう使い方はスタックを無駄遣いするのと
ソースを見難くするのでお勧めはしません。

例)
%0が1から1ずつ増加して8になるまでの間、%1が2ずつ減少して2になるまで、%0, %1を表示する。 ただし%0が4で、かつ%1が4の時はそれ以降の%1を減少を行わず、上のループを続ける。
*define
game
*start
for %0=1 to 8
for %1=6 to 2 step -2
%0,%1
if %0=4 & %1=4 break
next
next
click
end

/
page top / list / main

Ver.2.93【実行節のみ】
びーえすぴー、ぼたんすぷらいと
bsp

新画像ボタン

bsp NUM[,STR,STR,STR]

名前命令名

スプライトをボタンとして設定する。
パラメータを省略すると、マウスを重ねたときにセル1、マウスをはずしたときにセル0、マウスをクリックしたときにセル2(セルがみっつ以上ある場合のみ)になる。
パラメータを三つ指定できる。それぞれexbtnやspstrに指定するのと同じ文字列で、順に「マウスが重なっていないときの処理」「マウスが重なっているときの処理」「マウスを押したときの処理」になる。
文字列には""を指定できるので、何もしないときには""にすること。

制御文字列指定時にバグあり。20090417版以降で修正。
例)
スプライトをボタンとして設定する。
bsp 1 ;スプライト1番をボタンにする
bsp 2,"P3,0","P3,1","P4,1" ;スプライト2番をボタンにする。それぞれ重なっていないとき、重なったとき、押したときの処理を記述している。

exbtn / spbtn /
page top / list / main

Ver.2.93【実行節のみ】
びーたいむ、ぼたんたいむ
btime

新画像ボタン

btime NUM[,NUM]

文字列タイムアウト時間(ミリ秒)
文字列1の場合はボイス待ち

ボタン処理を開始してからタイムアウトする時間を指定する。
時間の後で,1とすると、時間が経過していてもボイス(dwaveチャンネル0)が再生し終わるまで待つ。これはオートモード等に使う。

例)
ボタン処理を開始してからタイムアウトする時間を指定する。
btime 2000 ;2秒後にタイムアウトする。
btime 1000,1 ;1秒後にタイムアウトする。1秒を過ぎてもボイスが終了していなければ待つ。

btntime /
page top / list / main

Ver.2.48【実行節のみ】
びーてぃーえぬ、ぼたん
btn

画像ボタン

btn NUM,NUM,NUM,NUM,NUM,NUM,NUM

数値ボタン番号
数値表示位置の左上X座標
数値表示位置の左上Y座標
数値ボタン画像の幅
数値ボタン画像の高さ
数値元画像から抽出する位置の左上X座標
数値元画像から抽出する位置の左上X座標

左から順に、ボタン番号,x,y,wd,ht,x3,y3です。
ボタンの定義命令です。ボタン番号>0です。
ゲーム画面上の(x,y)を左上として、サイズwd * htの範囲をボタンとして指定します。
その上にマウスカーソルがのると、ボタン画像ファイルの(x3,y3)を左上の点とする画像が表示されます。
くわしくは、フォルダbtndemoにある説明.txtを参照下さい。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
ぼたんえりあ
btnarea

ボタンモード拡張

btnarea NUM

数値エリアとするY座標

btndefの下で使ってください。
負ならば絶対値を取って、その数以上、正ならばその数以下の位置にカーソルが来たときに、ボタン命令で-4を返します。

btnareaを複数指定すると、最後に指定したもののみ有効になるようです。(by senzogawa)
例)
マウスカーソルがウィンドウ上のY座標400以下に来たとき-4を返すよう設定
btndef clear
btnarea -400

btndef /
page top / list / main

Ver.2.48【実行節のみ】
びーてぃーえぬでふ、ぼたんでぃふぁいん
btndef

画像ボタン

btndef STR

文字列ボタンファイル名

btndef clear

列挙ボタン化した画像を破棄

ボタン画像ファイルを設定します。これを使うと、以前のボタン定義はクリアされます。
くわしくは、フォルダbtndemoにある説明.txtを参照下さい。

例)
例)

/
page top / list / main

Ver.2.48【実行節のみ】
ぼたんだうん
btndown

ボタンモード拡張

btndown NUM

数値設定フラグ(0:解除,1:設定)

btndefとbtnwait系命令の間に挟んでください。
そのボタン命令において、ボタンの押しっぱなしを取得できるようににします。

例)
ボタンの押しっぱなしを取得するよう設定する
btndown 1

btndef / btnwait / isdown /
page top / list / main

Ver.2.48【定義節のみ】
びーてぃーえぬうぃんどういれーす、ぼたんうぃんどういれーす
btnnowindowerase

テキストウィンドウ

btnnowindowerase

ボタン時にテキストウィンドウが消えなくなります。

例)
ボタン時にテキストウィンドウが消えないようにする
btnnowindowerase

/
page top / list / main

Ver.2.48【実行節のみ】
びーてぃーえぬたいむ、ぼたんたいむ
btntime

画像ボタン

btntime %VAR

数値btnwaitもしくはbtnwait2の時間制限(ミリ秒)

次のbtnwaitもしくはbtnwait2の時間制限をミリ秒で指定します。この命令を使った直後のボタンモードで、何も押されずに指定した時間が過ぎると、 btnwait系命令は-2を返します。

usewheelを指定している場合は、-5を返します。
例)

/
page top / list / main

Ver.2.48【実行節のみ】
ぼたんたいむつー
btntime2

画像ボタン

btntime2 NUM

数値タイムアウトする時間(単位:ミリ秒)

btntimeとほぼ同じだが、ボイスの発生終了まで待つ

例)
次のbtnwaitで1秒たったらタイムアウトするように設定
btntime2 1000

btntime /
page top / list / main

Ver.2.48【実行節のみ】
びーてぃーえぬうぇいと、ぼたんうぇいと
btnwait

画像ボタン

btnwait %VAR

数字変数入力の結果

実際にボタン処理します。数字変数に結果が戻ります。

戻り値:
0…どのボタンでもないところをクリックした
-1…右クリックした
その他…ボタン番号

戻り値が0以下(ボタンを押していない)ときは、すぐにもういちどbtnwaitを呼べば、また同じボタンモードに。
戻り値が1以上(実際にボタンを押した)ときは、押された瞬間の画像のままで、ボタン定義は全てクリアされます。(メモリ節約のため)
くわしくは、フォルダbtndemoにある説明.txtを参照下さい。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
びーてぃーえぬうぇいとつー、ぼたんうぇいとつー
btnwait2

画像ボタン

btnwait2 %VAR

数字変数入力の結果

実際にボタン処理します。数字変数に結果が戻ります。

戻り値:
0…どのボタンでもないところをクリックした
-1…右クリックした
その他…ボタン番号

btnwait命令と違って、ボタン定義はクリアされません。だから、ボタン画像ファイルは読まれっぱなしです。
ボタン処理が終わって、ボタンが要らなくなったら、他の処理がメモリを使えるように、btndef ""でボタン定義をクリアして、ボタン画像を解放しておくことをお勧めします。

例)

/
page top / list / main

Ver.2.94【実行節のみ】
びーとらんす、ぼたんとらんすぺあれんと
btrans

新画像ボタン

btrans

bclear命令とbexec命令の間にbtrans命令を入れると、ボタン画像の透過部分には反応しなくなりました。

例)

transbtn /
page top / list / main

Ver.2.48【定義節・実行節両用】
びーだぶりゅーとぅえい、ぶらっくほわいととぅあるふぁ
bw2a

開発支援

bw2a STR

文字列画像ファイル名(拡張子なし)

渡された文字列_w.bmpと渡された文字列_b.bmpからNScripter形式の透過画像を作ります。
付属しているbw2aconv.exeと同じ動作です。

<豆知識>
コマンドプロンプトから
dir /b > filelist.txt
とかをやるとファイルリストが取れるので、
それと組み合わせて一括変換に使うといいでしょう。

例)
test_w.bmpとtest_b.bmpからNScrのα値形式BMPを作ります。
bw2a "test"

/
page top / list / main

Ver.2.49【定義節・実行節両用】
びーだぶりゅーとぅえいすりー、ぶらっくほわいととぅあるふぁすりー
bw2a3

開発支援

bw2a3 STR

文字列画像ファイル名(拡張子なし)

白抜きと黒抜きから、NScripter形式の透過画像を作ります。
製作作業用の命令です。
nscripterと同じ位置にフォルダ"b"とフォルダ"w"を作り、それぞれ白抜きと黒抜きを入れてください(白抜きと黒抜きについてはbw2aの説明をご覧ください)
ファイル名は元と同じでいいのがミソです。フォトショップのアクションを使えば作業が効率化できるでしょう。

例)
b\test.bmpとw\test.bmpからout\test.bmpを作ります。
bw2a3 "test.bmp"

/
page top / list / main

Ver.2.48【定義節・実行節両用】
きゃぷしょん
caption

情報表示

caption STR

文字列ウィンドウのタイトルバーに表示する文字列

ウィンドウのタイトルを変えます。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
しーでぃーふぇーどあうと
cdfadeout

音楽・SE演奏

cdfadeout NUM

数値CD演奏のフェードアウトに掛ける時間(ミリ秒)

CDのフェードアウトに掛ける時間をミリ秒単位で指定します。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
せる
cell

画像表示

cell NUM,NUM

数値スプライト番号(0~255)
数値セル番号(0~セル数-1)

手動でスプライトのセルを指定します。内部状態を切り替えるだけなので、あとでprintなどで画面に反映してください。

例)

/
page top / list / main

Ver.2.49【実行節のみ】
せるちぇっくいーえっくすびーてぃーえぬ、せるちぇっくえっくすぼたん
cellcheckexbtn

画像ボタン

cellcheckexbtn NUM,NUM,STR

数値スプライト番号
数値ボタン番号
文字列カーソル時の制御文字列

cellcheckspbtnのexbtnバージョンです。引数はexbtnと同じです。
スプライトがロードされ、かつ、セルが二つ以上あるときのみ拡張ボタンとして設定します。そうでないときは無視されます。
なお、exbtnについては「サンプル」「メニューのカスタマイズと複合ボタン」を参照してください。新機能S(音声再生)とM(スプライト移動)が増えています。

例)
スプライト番号1の画像のセルが2つ以上なら、ボタン番号100でボタン化し、カーソル時にセル番号1とスプライト番号2を表示する。
cellcheckexbtn 1,100,"P1,1P2"

cellcheckspbtn / exbtn /
page top / list / main

Ver.2.48【実行節のみ】
せるちぇっくえすぴーびーてぃーえぬ、せるちぇっくすぷらいとぼたん
cellcheckspbtn

画像ボタン

cellcheckspbtn NUM,NUM

数値スプライト番号(0~999)
数値ボタン番号

基本的にはspbtnと同じですが、セルが二つ以上ない画像の場合は無視されます。
これはCGモードのときに有効に使えます。
(つまり、サムネイルはセルがひとつだけにしておけば、
 spbtn登録はループで一気に行える)

例)
スプライト番号0~9のうち、セルが二つ以上ある画像のみボタン定義する。
for %0=0 to 9
  cellcheckspbtn %0,%0+1
next

spbtn /
page top / list / main

Ver.2.48【定義節・実行節両用】
ちぇいんびーえむぴー、ちぇいんびっとまっぷ
chainbmp

開発支援

chainbmp STR

文字列画像ファイル名

out.bmpの隣にその画像ファイルを貼り付けていきます。
out.bmpが無ければ作成します。

画像の縦幅は同じである必要があります。
あまり使い勝手よくないです。
例)

/
page top / list / main

Ver.2.92【実行節のみ】
ちぇっくきー
checkkey

システムカスタマイズ関連

checkkey %VAR,STR

数字変数結果(0:押下あり、1:なし)
文字列キー種別

キーの押下状態を取得します。
文字列には、英字1文字、数字、スペースなどはそのまま指定できます。
"SPACE"でもスペースキーは取得できます。
"RETURN" "ENTER" リターンキー
"CTRL" コントロールキー
"UP" "DOWN" "LEFT" "RIGHT" カーソルキー上下左右
"F1"~"F12" ファンクションキー
"PAGEUP" "PAGEDOWN" ページアップ、ダウンキー
"SHIFT" シフトキー
を指定します。

例)
スペースキーが押されていれば1押されていなければ0を%1に取得する。
checkkey %1," "

btnwait / selectbtnwait / textbtnwait / textgosub /
page top / list / main

Ver.2.49【定義節・実行節両用】
ちぇっくぺーじ
checkpage

バックログカスタマイズ

checkpage %VAR,NUM

数字変数結果の格納先
数値何ページ前か(0は現在のページ)

回想文字列を取得できるかどうかを調べます。
第一引数は結果を格納する数字変数、第二引数は何ページ前かを指定します。
1で取得可能、0で不可能です。第二引数には1以上を指定してください。
0は現在のページなので、この関数を使わなくても処理できるはずです。

例)
一ページ前のログが取得できるかどうかを%5に格納する。
checkpage %5,1

/
page top / list / main

Ver.2.48【定義節のみ】
ちぇっくしーでぃーふぁいる
chkcdfile

音楽・SE演奏

chkcdfile STR,STR

文字列判定するファイル名
文字列判定失敗時のメッセージ

これで、「ファイル名」のファイルがあるCDドライブを検索します。
もしCDが入っていなければ指定した文字列のエラーポップアップを表示します。
ボタンは「再試行」と「キャンセル」です。

例)
CDドライブに"file.dat"があるか判定し、失敗なら"CDがありません"と表示
chkcdfile "file.dat","CDがありません"

chkcdfile_ex /
page top / list / main

Ver.2.48【定義節のみ】
ちぇっくしーでぃーふぁいるいーえっくす
chkcdfile_ex

音楽・SE演奏

chkcdfile_ex %VAR,STR

数字変数判定結果の格納先
文字列判定するファイル名

これで、「ファイル名」のファイルがあるCDドライブを検索します。
もしCDが入っていれば1、なければ0を返します。

例)
CDドライブに"file.dat"があるか判定し、結果を%0に取得
chkcdfile_ex %0,"file.dat"

chkcdfile /
page top / list / main

Ver.2.48【定義節・実行節両用】
しーえいちぼる、ちぇんじぼりゅーむ
chvol

音楽・SE演奏

chvol NUM,NUM

数値dwaveのチャンネル番号
数値ボリューム(0~100)

dwaveチャンネルのボリュームを変えます。

セーブされないので手動で管理してください。
nsogg.dll,nsogg2.dll使用時はセーブされるようになった模様。
例)
チャンネル3をボリューム100にします(0-100)
chvol 3,100

/
page top / list / main

Ver.2.48【実行節のみ】
しーえる、くりあ
cl

画像表示

cl {l,c,r,a},EFFECT

列挙立ち絵の削除位置(l:左、c:中央、r:右、a:全て)
エフェクト立ち絵表示時のエフェクト

その位置の立ち絵を消します。
aはすべて消すことを意味します。

例)

effect / ld /
page top / list / main

Ver.2.48【実行節のみ】
くりっく
click

クリック待ち

click

クリックを待ちます。

例)

lrclick /
page top / list / main

Ver.2.48【実行節のみ】
くりっくぽす、くりっくぽじしょん
clickpos

追加機能

clickpos %VAR,%VAR

数字変数クリックしたX座標
数値クリックしたY座標

クリック待ちをして、クリックした位置を取得します。X座標、Y座標です。

例)

/
page top / list / main

Ver.2.60【定義節のみ】
くりっくすきっぷぺーじ
clickskippage

追加機能

clickskippage

通常、クリックによってメッセージが次のクリック待ちまで瞬時表示になりますが、この時、通常クリック待ちではなくそのページの改頁待ちまで一気に飛ぶようにします。
define節専用命令です。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
くりっくえすてぃーあーる、くりっくすとりんぐ
clickstr

クリック待ち

clickstr STR,NUM

文字列クリック待ちとなる全角文字の集合
数値改ページ待ちとなる残りの行数

強制クリック待ち機能をオンにします。これを実行すると、特定の文字を表示したらクリック待ちするように作れます。
ただし、その直後に本来のクリック待ち文字がある場合、もしくは、強制クリック文字の前に_(半角アンダーバー)がある場合は、強制クリック待ちはされません。
強制クリック待ち時に、単なるクリック待ちか改ページになるかは、二番目のパラメータが決めます。(最大行-数字)よりも下で強制クリック文字を見つけたときは、改ページになります。
この機能は、作業の簡便化には役立つのですが、次の一行が非常に長く、数字設定よりも上の行から始まって字がはみ出すような現象を防ぐことまではできません。
その場合は、そこだけ本来の改ページ文字を使うか、数字を変えてください。文字列は全角文字のみ許されます。

例)
'」'、'。'、'!'、'?'を表示する時にクリック待ちするように指定する
clickstr "」。!?",2

@ / \ /
page top / list / main

Ver.2.48【定義節のみ】
くりっくぼいす
clickvoice

クリック待ち

clickvoice STR,STR

文字列クリック待ち時のクリック音
文字列改ページ待ち時のクリック音

クリック待ちでクリックしたときになるWAVEファイルを指定します。
順に、普通のクリック待ち、改ページクリック待ち、です。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
しーえむぴー、こんぺあ
cmp

条件式・ループ書式

cmp %VAR,STR,STR

数字変数結果が代入される数字変数
文字列比較対象の文字列
文字列比較対象の文字列

文字列同士を比べて、等しければ0、等しくなければそれ以外を、数字変数に代入します。
右のほうが大きい場合、負、左のほうが大きい場合、正が帰ります。

現在のNScripterでは文字列比較が演算子(=または==)で可能なため、単に等しいかどうかの比較ならばこの命令を使う必要はありません。(by senzogawa)
例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
こさいん、こす
cos

計算式・変数

cos %VAR,NUM

数字変数計算結果の格納先
数値角度(単位は度)

三角関数cosθを取得します。
値は1000倍されたものが返ってきます。

例)
cos60°を%1に取得する
cos %1,60
;%0=1000になる。

sin / tan /
page top / list / main

Ver.2.48【定義節のみ】
くりえいとだみー
createdummy

開発支援

createdummy STR

文字列ダミー画像ファイル名

指定された名前でダミーBMPファイル(640.480)を作ります。
真っ白背景に黒字でファイル名がでかでか書かれます。

mode800などで変更しても640x480の画像ファイルが作成されます。(by senzogawa)
例)
test.bmpという名前のダミー画像ファイルを作成する。
createdummy "test.bmp"

/
page top / list / main

Ver.2.48【実行節のみ】
しーせる、かすたむせれくと
csel

システムカスタマイズ関連

csel STR,LABEL[,STR,LABEL[,...]]

文字列選択肢とする文字列
ラベル選択された時の飛び先

システムカスタマイズ時の選択肢命令。*customselを呼び出すために使う。書式はselectと一緒。

例)
"選択肢1"で*s1、"選択肢2"で*s2、"選択肢3"で*s3となるように選択肢を設定する
csel "選択肢1",*s1,"選択肢2",*s2,"選択肢3",*s3

*customsel / cselbtn / cselgoto / getcselnum / getcselstr / selectbtnwait /
page top / list / main

Ver.2.48【実行節のみ】
しーせるびーてぃーえぬ、かすたむせれくとぼたん
cselbtn

システムカスタマイズ関連

cselbtn NUM,NUM,NUM,NUM

数値選択肢とする文字列のインデックス
数値ボタン番号
数値選択肢の表示左上X座標
数値選択肢の表示左上Y座標

選択肢のテキストでボタンを作る。文字列とスプライト番号の指定が不要。

テキストウィンドウ上ではない座標を指定すると、エラーが出ます。画面中央など、テキストウィンドウから外れた場所に表示したい場合はgetcselstrを使う必要があります。(by senzogawa)
例)
1番目の選択肢文字列を、座標%1,%2でボタンとして表示する
cselbtn 0,500,%1,%2

*customsel / csel / cselgoto / getcselnum / getcselstr / selectbtnwait /
page top / list / main

Ver.2.48【実行節のみ】
しーせるごーとぅー、かすたむせるごーとぅー
cselgoto

システムカスタマイズ関連

cselgoto NUM

数値選択された選択肢のインデックス

cselで設定したラベルへ飛ぶ。

例)
%0のインデックスの選択肢ラベルに飛ぶ
cselgoto %0

*customsel / csel / cselbtn / getcselnum / getcselstr / selectbtnwait /
page top / list / main

Ver.2.48【実行節のみ】
しーえすぴー、くりあすぷらいと
csp

画像表示

csp NUM

数値スプライト番号(0~255)又は-1:全消去

そのスプライトを消去します。
-1を指定すると、すべてのスプライトを消去します。

例)

/
page top / list / main

Ver.2.80【実行節のみ】
しーえすぴーつー、くりあすぷらいとつー
csp2

拡張スプライト

csp2 NUM

数値拡張スプライト番号

拡張スプライトを消去します。

例)
拡張スプライト0番を消去する。
csp2 0

amsp2 / lsp2 / lsp2add / lsph2 / lsph2add / msp2 / vsp2 /
page top / list / main

Ver.2.63【定義節・実行節両用】
しーえすぶいくろーず
csvclose

CSVファイル操作

csvclose

csvファイルを閉じます。この命令で閉じないと開きっぱなしですので、使い終わったら閉じるようにしてください。

例)
CSVファイルを閉じる。
csvclose

csvopen /
page top / list / main

Ver.2.63【定義節・実行節両用】
しーえすぶいいーおーえふ、かんませぱれいてぃっどばりゅーえんどおぶふぁいる
csveof

CSVファイル操作

csveof %VAR

数字変数判定結果の格納先(0:終端ではない、1:終端に達した)

(読み取りモード専用です)
csvファイルを最後まで読み終わっていれば1、終わっていなければ0を返します。

例)
CSVファイルを最後まで読み終わっているかどうかを%1に取得する。
csveof %1

csvread /
page top / list / main

Ver.2.63【定義節・実行節両用】
しーえすぶいおーぷん
csvopen

CSVファイル操作

csvopen STR,STR

文字列CSVファイル名
文字列モード指定

csvファイルを開きます。一つ目の文字列はファイル名です。
nsaの中に格納しているファイルも読み出すことが出来ます。
二つ目の文字列は、モード指定です。次のように指定します。
"r"……読み取りモード。通常のcsvファイルを読みます。
"rc"……暗号化csv読み取りモード。wcで書き込んだcsvファイルを読みます。
"w"……書き込みモード。csvファイルに書き込みます。
"wc"……暗号化書き込みモード。csvファイルを暗号化して書き込みます。

resetすると自動的にcloseされます。(by senzogawa)
例)
"test.csv"を読み取りモードで開く。
csvopen "test.csv","r"
例)
"angou.csv"を暗号化モードで書き込む。
csvopen "angou.csv","wc"

csvclose / csveof / csvread / csvwrite /
page top / list / main

Ver.2.63【定義節・実行節両用】
しーえすぶいりーど
csvread

CSVファイル操作

csvread %VAR|$VAR[,...]

変数読んだデータの格納先

(読み取りモード専用です)
csvファイルからデータを読み出します。指定した順に読み取ります。

例)
CSVファイルのデータをカンマで区切られた順に$0,$1,%0,%2に取得する。
csvread $0,$1,%0,%2

csvopen /
page top / list / main

Ver.2.63【定義節・実行節両用】
しーえすぶいらいと
csvwrite

CSVファイル操作

csvwrite STR|NUM[,...]

特殊書き込む値

(書き込みモード専用です)
csvファイルにデータを書き込みます。指定した順に書き込みます。

例)
CSVファイルに、12,"test",%1,$2の順に書き込む。
csvwrite 12,"test",%1,$2

csvopen /
page top / list / main

Ver.2.48【実行節のみ】
でいと
date

各種情報取得

date %VAR,%VAR,%VAR

数字変数年を取得する変数
数字変数月を取得する変数
数字変数日を取得する変数

マシンの現在の年月日を取得します。

例)

/
page top / list / main

Ver.2.61【定義節・実行節両用】
でばっぐろぐ
debuglog

開発支援

debuglog NUM

数値ログ取得フラグ(0:オフ、1:オン)

デバッグウィンドウに表示される文をdebuglog.txtというテキストファイルに保存していくことが出来る命令です。
debuglog 1でオン、debuglog 0でオフです。define節でもstart以降でも使えます。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
でく、でくりめんと
dec

計算式・変数

dec %VAR

数字変数デクリメント対象の変数

その変数の値を1減らします。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
でふぉるとふぉんと
defaultfont

テキスト表示

defaultfont STR

文字列フォント名

デフォルトのフォントを指定します。
指定しなければ、MS ゴシックが使われます。

後から記述を追加した場合、一旦envdataを消さないと反映されません。(by senzogawa)
例)

/
page top / list / main

Ver.2.48【定義節のみ】
でふぉるとすぴーど
defaultspeed

ウィンドウメニュー関連

defaultspeed NUM,NUM,NUM

数値TEXTSLOWに対応する表示速度
数値TEXTMIDDLEに対応する表示速度
数値TEXTFASTに対応する表示速度

特殊表示文字!sdまたはtextspeeddefault命令を呼び出したときの時の文字速度の指定です。
左から順に、メニューから「低速」「普通」「高速」を選んだときの速度です。

例)
メニューの「低速」「普通」「高速」に対応して50,20,0を設定する
defaultspeed 50,20,0

!sd / textspeeddefault /
page top / list / main

Ver.2.48【定義節のみ】
でふびーじーえむぼる、でふぉるとびーじーえむぼりゅーむ
defbgmvol

特殊モード設定

defbgmvol NUM

数値デフォルトの音量(0~100)

BGMのデフォルトボリュームをいじれます。デフォルトでは100(0から100です。)

例)

/
page top / list / main

Ver.2.48【実行節のみ】
でぃふぁいんりせっと
definereset

ゲームスタート・リセット・終了

definereset

定義リセット命令です。*define節から読みなおします。

例)
変数200に1を代入して*defineから読み直す
mov %200,1
definereset

*define /
page top / list / main

Ver.2.48【定義節のみ】
でふえむぴーすりーぼる、でふぉるとえむぴーすりーぼりゅーむ
defmp3vol

特殊モード設定

defmp3vol NUM

数値デフォルトの音量(0~100)

MP3(BGM)のデフォルトボリュームをいじれます。デフォルトでは100(0から100です。)

例)

/
page top / list / main

Ver.2.48【定義節のみ】
でふえすいーぼる、でふぉるとえすいーぼりゅーむ
defsevol

特殊モード設定

defsevol NUM

数値デフォルトの音量(0~100)

SE(DWAVE 1~)のデフォルトボリュームをいじれます。デフォルトでは100(0から100です。)

例)

/
page top / list / main

Ver.2.48【定義節のみ】
でふさぶ
defsub

追加機能

defsub NAME

名前サブルーチンのラベル名

指定した名前のユーザ定義命令を作ります。
実際にはサブルーチンとして実装されます。
命令名は変数と同じ法則で名づけることが出来ますが、先頭に_を使うことだけは出来ません。

なお、NScripterにもともとある命令名でもdefsubで登録できます。
その場合、ユーザ定義命令が優先されます。
もともとの命令を呼びたい場合は、頭に_をつけてください。
例)
*define
defsub *texton
game

*start
texton ;gosub *textonになる
_texton ;もともとのtextonが呼ばれる
例)
サブルーチン*subnameを命令として定義。
defsub subname

以降のスクリプトで
subname
とあると、
*subname
にgosubジャンプする。

getparam /
page top / list / main

Ver.2.48【定義節のみ】
でふぼいすぼる、でふぉるとぼいすぼりゅーむ
defvoicevol

特殊モード設定

defvoicevol NUM

数値デフォルトの音量(0~100)

voice(DWAVE 0)のデフォルトボリュームをいじれます。デフォルトでは100(0から100です。)

例)

/
page top / list / main

Ver.2.48【実行節のみ】
でぃれい
delay

ウェイト・タイマー

delay NUM

数値待機する時間(ミリ秒)

数字ミリ秒分だけ、待ちます。クリックで飛ばせます。
特殊表示文字dと同じですが、変数を引数に使えます。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
でりーとめにゅー
deletemenu

ウィンドウメニュー関連

deletemenu

NScrからWindowsのメニューバーをなくせます。

例)
NScrからWindowsのメニューバーを消す。
deletemenu

insertmenu / killmenu / resetmenu /
page top / list / main

Ver.2.48【実行節のみ】
でりーとすくりーんしょっと
deletescreenshot

スクリーンショット

deletescreenshot

メモリ内に確保したスクリーンショットを削除します。
savescreenshot2命令と組み合わせて使います。

例)
取得したスクリーンショットを削除する
deletescreenshot

getscreenshot / savescreenshot / savescreenshot2 /
page top / list / main

Ver.2.48【定義節のみ】
でぃむ
dim

計算式・変数

dim '?'NUM'['NUM']'['['NUM']'...]

数値配列変数番号(0~199)
数値配列の要素数(実際の要素数は+1)

配列変数はBASIC式です。つまり、この宣言だと、?0は、
一次元目が0~10の、二次元目が0~20の添字を使えます。

例のとおり、今まで「数字」となっていたところならどこでも
配列変数を使えます。

配列の添字は0からはじまるので、一列の長さは宣言のときの
数字よりもひとつ多いことに気をつけてください。
例)
よくある使い方
mov ?0[2][5],20
;?0[2][5]に20を代入。
mov %4,?0[3][1]
;%4に?0[3][1]を代入。
?0[2][3]=?0[2][3]@
;値を表示
例)
エイリアスenemyparamに10を指定し、要素数10+1個の1次元配列を宣言する。
numalias enemyparam,10
dim ?enemyparam[10]

/
page top / list / main

Ver.2.48【定義節・実行節両用】
でぃぶ、でぃばいど
div

計算式・変数

div %VAR,NUM

数字変数数値の演算先
数値演算する数値

その変数を、数字で割ります。整数、小数点以下切り捨てで答えが出ます。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
どろー
draw

デモ用命令

draw

draw系命令で描画した画像を実画面に転送します。
これがないと表示されません。

例)
背景画像"bg.bmp"を反時計回りで回転させながら表示させる
*test
saveoff
;デモ処理はsaveoffしたほうが速くなります。終わったらsaveonを忘れずに
mov %0,0
bg "bg.bmp",1
*lp
resettimer
drawclear
drawbg2 320,240,100,100,%0*2
draw
wait 5
;ウェイトを多少いれないと、メッセージ処理が遅れがちになります。
gettimer %1
if %1>=50 add %0,%1/50
if %1<50 waittimer 50:inc %0
;掛かった処理時間に比例して変数を変化させます。
goto *lp

/
page top / list / main

Ver.2.48【実行節のみ】
どろーびーじー
drawbg

デモ用命令

drawbg

BG画面を描画します。

スプライトも人もテキスト欄も表示されませんのでご注意ください。
例)
BG画面を描画します。
drawbg

/
page top / list / main

Ver.2.48【実行節のみ】
どろーびーじーつー
drawbg2

デモ用命令

drawbg2 NUM,NUM,NUM,NUM,NUM

数値画面の位置の中心X座標
数値画面の位置の中心Y座標
数値横の拡大率(単位は%)
数値縦の拡大率(単位は%)
数値回転角度(単位は度)

BG画面を描画します。(x,y)で位置を指定します。
x_scale、y_scaleは、縦横の拡大率です。単位は%です。
rotは回転の角度です。反時計回りで、単位は度です。
なお、はみ出た部分は描画されないので前の画像が残ります。
それではまずい場合は、事前にdrawclearなどで消しておいて下さい。

スプライトも人もテキスト欄も表示されませんのでご注意ください。
この命令は画面の位置を中心座標で指定しますので、注意してください。
(他の命令のように左上の座標ではありません)
例)
(320,240)を中心にして、横に2倍縦に3倍、反時計回りに15度傾けて背景を書く
drawbg2 320,240,200,300,15

/
page top / list / main

Ver.2.48【実行節のみ】
どろーくりあ
drawclear

デモ用命令

drawclear

画面を黒く塗りつぶします。

例)
画面を黒く塗りつぶします。
drawclear

/
page top / list / main

Ver.2.48【実行節のみ】
どろーふぃる
drawfill

デモ用命令

drawfill NUM,NUM,NUM

数値赤成分。RGBのR。0~255
数値緑成分。RGBのG。0~255
数値青成分。RGBのB。0~255

画面をその色で塗りつぶします。
RGBで、それぞれ0~255を指定します。

例)
画面を#FF0080で塗りつぶす。
drawfill 255,0,128

/
page top / list / main

Ver.2.48【実行節のみ】
どろーえすぴー、どろーすぷらいと
drawsp

デモ用命令

drawsp NUM,NUM,NUM,NUM,NUM

数値スプライト番号
数値セル番号
数値透過度
数値表示先左上X座標
数値表示先左上Y座標

スプライトを描画します。
スプライト番号、セル番号、透過度、表示先左上x座標,表示先左上y座標を指定します。
通常モードでのスプライトの位置、表示非表示は関係ありません。
スプライトやテキストウィンドウは、新しく書いたほうが上へ重なります。

例)
座標(20,40)に、スプライト2番セル1番を、透過度128で表示します。
drawsp 2,1,128,20,40

/
page top / list / main

Ver.2.48【実行節のみ】
どろーすぷらいとつー、どろーえすぴーつー
drawsp2

デモ用命令

drawsp2 NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM

数値スプライト番号
数値セル番号
数値透過度
数値表示先中心X座標
数値表示先中心Y座標
数値横の拡大率(単位は%)
数値縦の拡大率(単位は%)
数値回転角度(単位は度)

スプライトを描画します。
スプライト番号、セル番号、透過度、表示先中心x座標,表示先中心y座標を指定します。
通常モードでのスプライトの位置、表示非表示は関係ありません。
スプライトやテキストウィンドウは、新しく書いたほうが上へ重なります。

この命令も、中心座標での指定になりますので、ご注意ください。
ver.2.51もしくはそれ以前のNScripterでは、drawsp2でα値を持った画像を扱うときに限り、透過度が本来と反対に0で非透過、255で透過と扱われるバグがあります。
ver.2.52で修正されたため、旧バージョンのスクリプトを使うときにはdrawsp2に与える3つめのパラメータを修正する必要があります。
例)
座標(20,40)を中心として、スプライト2番セル1番を、横1.5倍、縦60%,時計回りで10度傾けて、透過度128で表示します。
drawsp2 2,1,128,20,40,150,60,-10

/
page top / list / main

Ver.2.60【実行節のみ】
どろーすぷらいとすりー
drawsp3

デモ用命令

drawsp3 NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM

数値スプライト番号
数値セル番号
数値不透過度
数値描画左上X座標
数値描画左上Y座標
数値行列左上の値
数値行列右上の値
数値行列左下の値
数値行列右下の値

drawsp系の命令で、一次変換を実現するものです。
スプライトを描画します。
スプライト番号、セル番号、透過度、α値、表示先中心x座標,表示先中心y座標、行列の要素左上、右上、左下、左下の順で指定します。
行列の要素は実際の1000倍の値になります。

例)
座標(20,40)に、スプライト2番セル1番を、 一次変換行列 {1.500 3.00} {8.00 1.200} で変換した画像を表示します。
drawsp3 2,1,128,20,40,1500,300,800,1200

drawsp / drawsp2 /
page top / list / main

Ver.2.48【実行節のみ】
どろーてきすと
drawtext

デモ用命令

drawtext

テキストウィンドウを描きます。
これより前に書いたスプライトは下に、後に書いたスプライトは上に来ます。

例)
テキストウィンドウを書きます。
drawtext

/
page top / list / main

Ver.2.48【実行節のみ】
でぃーさうんど、だいれくとさうんど
dsound

音楽・SE演奏

dsound

define節で使います。DirectSoundを使うことを宣言します。この命令を使うには、DirectX2もしくはそれ以降が必要です。 (この命令は現在のバージョンでは使う必要がなくなっています)

例)

/
page top / list / main

Ver.2.48【実行節のみ】
でぃーぶい、だいれくとぼいす
dv

音楽・SE演奏

'dv'NUM':'

数字音声ファイル名用の番号

ボイスを入れるときに便利な命令です。
dwave 0,"wav\数字.wav"と等価です。

例)
"「これが0001番のせりふだよー」"の表示時に、"wav\0001.wav"をdwave命令のチャンネル0で再生する
dv0001:「これが0001番のせりふだよー」

dwave / v /
page top / list / main

Ver.2.48【実行節のみ】
でぃーうぇいぶ
dwave

音楽・SE演奏

dwave NUM,STR

数値チャンネル番号(0~49)
文字列WAVEファイル名

DirectSoundでWAVファイルを演奏します。
数字はチャンネルNOで、0から49までです。
違うチャンネルの音はミキシングされて同時再生されます。
なお、オートモードでの再生終了待ちはチャンネル0で行います。
再生できるのはPCM形式だけです。
wave系命令と同時に使用することも出来るので、たとえばMP3コーデックでの BGMをwaveloop命令で鳴らしつつ、こっちで音声再生という使い方が出来ます。

wave命令でnsaアーカイブされたWAVEファイルを演奏後、wavestop又はstop命令を使用せずに、この命令で同じファイルを演奏しようとするとエラーになります。(ver.2.54まで再現)(by senzogawa)
例)
"test.wav"をチャンネル0で1度だけ再生する。
dwave 0,"test.wav"

/
page top / list / main

Ver.2.48【実行節のみ】
でぃーうぇいぶろーど
dwaveload

音楽・SE演奏

dwaveload NUM,STR

数値チャンネル番号(0~49)
文字列WAVEファイル名

演奏前にWAVをメモリにロードしdwaveplay dwaveplayloopで再生します

ロードしていないと再生しようとした時にエラーになります。
また、oggではこの命令は使えません。(by senzogawa)
nsogg.dllを利用した場合はエラーとなりません。(by senzogawa)
例)
"test.wav"をチャンネル0にロードし、1度だけ再生する。
dwaveload 0,"test.wav"
dwaveplay 0

/
page top / list / main

Ver.2.48【実行節のみ】
でぃーうぇいぶるーぷ
dwaveloop

音楽・SE演奏

dwaveloop NUM,STR

数値チャンネル番号(0~49)
文字列WAVEファイル名

dwaveと同じ書式ですが、こっちはループ再生します。

wave命令でnsaアーカイブされたWAVEファイルを演奏後、wavestop又はstop命令を使用せずに、この命令で同じファイルを演奏しようとするとエラーになります。(ver.2.54まで再現)(by senzogawa)
nsogg2.dll使用時はdwaveloop チャンネル番号,"(曲先頭からの時間)ファイル名"でループ時に戻る点を指定できます。
単位は秒です。小数が指定できます。
例)

/
page top / list / main

Ver.2.48【実行節のみ】
でぃーうぇいぶぷれい、だいれくとうぇいぶぷれい
dwaveplay

音楽・SE演奏

dwaveplay NUM

数値チャンネル番号(0~49)

dwaveloadでメモリにロードしたWAVを一度だけ再生します。

ロードせずに再生しようとするとエラーになります。
また、oggではこの命令は使えません。(by senzogawa)
nsogg.dllを利用した場合はエラーとなりません。(by senzogawa)
ボリューム変更は、この命令の後でchvolを使う必要があるようです。(by senzogawa)
例)

/
page top / list / main

Ver.2.48【実行節のみ】
でぃーうぇいぶぷれいるーぷ、だいれくとうぇいぶぷれいるーぷ
dwaveplayloop

音楽・SE演奏

dwaveplayloop NUM

数値チャンネル番号(0~49)

dwaveloadでメモリにロードしたWAVをループで再生します。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
でぃーうぇいぶすとっぷ
dwavestop

音楽・SE演奏

dwavestop

そのチャンネルの再生を止めます。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
えふぇくと
effect

画像エフェクト

effect NUM,NUM[,NUM[,STR]

数値エフェクト番号
数値既定の効果番号(1~18)
数値時間(ミリ秒)
文字列マスクパターンファイル名

エフェクト番号に、効果を割り当てます。
画像表示命令には、ここで指定したエフェクト番号を使ってください。
左から順に、エフェクト番号、効果番号、掛ける時間(単位ミリ秒)、パターン画像名です。
ただし、効果番号によっては、後ろの二つは省略されることもあります。

エフェクト番号0番は、「表示せずに、次の画像命令でいっしょに表示する」という意味で予約されているので、1番以降を使ってください。
なお、エフェクト番号0を使った場合は、なるべく早くほかの画像表示命令で画像を表示してください。

デフォルト指定で、1が瞬時表示にしてあります。

<効果番号一覧表>
 1 瞬時表示。時間指定はいりません。
 2 左シャッター
 3 右シャッター
 4 上シャッター
 5 下シャッター
 6 左カーテン
 7 右カーテン
 8 上カーテン
 9 下カーテン
10 ピクセル単位のクロスフェード
11 左からスクロール
12 右からスクロール
13 上からスクロール
14 下からスクロール
15 マスクパターンによるフェード。
   第三パラメータに文字列でマスク画像名を指定します。
   マスク画像の形式は256色でもフルカラーでもかまいません。
   サンプルで置いてあるm1.bmp,m2.bmpでためしていただければわかると
   思いますが、マスク上で白いところほど遅く、黒いところほど速く
   表示されます。
   マスク画像が小さいときは、壁紙のように四方に並べて640x480ドットに
   敷き詰められます。
16 モザイクアウト。この命令のあとは、指定された画面をエフェクト番号0
   でロードしたときと同じで、不定状態です。必ず、直後にほかの命令…
   たとえばprintなどを使って、画像を表示しなおしてください。
17 モザイクイン。
18 マスクパターンによるクロスフェード
   15番では、単に、マスクの濃度による時間差でピクセルがコピーされる
   だけでしたが、こっちは、時間差クロスフェードします。
   各社ではやっている演出効果ですが、マシンへの負担が、全エフェクトで
   一番大きいので、遅いマシンでは、少し荒くなるかもしれません。

指定できるエフェクト番号は2~255です。(by senzogawa)
例)
エフェクト番号2に上シャッター1秒のエフェクトを割り当てる。
effect 2,4,1000
例)
エフェクト番号3に
effect 3,15,2000,"m3.bmp"

/
page top / list / main

Ver.2.48【定義節のみ】
えふぇくとぶらんく
effectblank

画像エフェクト

effectblank NUM

数値次の命令の実行までの待ち時間

エフェクト終了後、次の命令の実行までにどれだけの間を取るかをミリ秒単位で指定します。
エフェクトが瞬時表示(1)である場合、この設定に関係なく、瞬時に表示されます。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
えふぇくとかっと
effectcut

画像エフェクト

effectcut

「選択肢までとばす」の時、エフェクトをすべて瞬間表示にします。

例)

/
page top / list / main

Ver.2.92【実行節のみ】
えふぇくとすきっぷ
effectskip

画像表示

effectskip NUM

数値スキップ可否フラグ(0:スキップ不可、1:スキップ可能)

エフェクト中にクリックをしたらエフェクトがスキップされるかどうかを指定します。
デフォルトでは1(スキップする)になっています。0にするとスキップしません。

例)
エフェクト中のスキップを許可する。
effectskip 1

effect / print /
page top / list / main

Ver.2.48【定義節・実行節両用】
えんど
end

ゲームスタート・リセット・終了

end

プログラムを終了し、ウィンドウを消します。

例)
終了確認後に終了する
yesnobox %0,"今日はもう終わり?","終了確認"
if %0==1 end

game /
page top / list / main

Ver.2.82【定義節のみ】
いんぐりっしゅ
english

追加機能

english

NScripterを英文モードにします。半角英字のみの文章を正しく表示できるようになります。
このモードを使う時は、行頭を>にしてください。

2007.11.04版から追加されたようです。利用する場合には、#ffffffや!sdなどの表示文中命令について命令文を利用するようにする必要があります。代替命令は関連命令に記述しておきます。(by senzogawa)
例)
Peter Piper picked a peck of pickled peppers;と表示する。
*define
english
game
*start
>Peter Piper picked a peck of pickled peppers;@
end

delay / textcolor / textspeed / textspeeddefault / wait /
page top / list / main

Ver.2.65【実行節のみ】
いれいすてきすとぼたん
erasetextbtn

テキストボタン

erasetextbtn

テキストボタンを押してボタンモードを抜けたとき、押されたままになりますが、そのテキストボタンを消して元通りの色にします。

例)

<> /
page top / list / main

Ver.2.48【実行節のみ】
いれいすてきすとうぃんどう
erasetextwindow

テキストウィンドウ

erasetextwindow NUM

数値フラグ(0:そのまま、1:エフェクト時ウィンドウ消去)

数字が0の時は、テキストウィンドウが、エフェクトのときにも出っ放しになります。
1がデフォルトで、エフェクトのたびに、ウィンドウを消去します。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
えらーせーぶ
errorsave

セーブ・ロード

errorsave

エラー時にセーブno999で自動セーブする

例)
エラー時にセーブno999で自動セーブするよう設定
errorsave

/
page top / list / main

Ver.2.48【実行節のみ】
いーえっくすびーてぃーえぬ、えくすとらぼたん
exbtn

画像ボタン

exbtn NUM,NUM,STR

数値スプライト番号
数値ボタン番号
文字列スプライト制御文字列

最後に制御文字列が付く以外はspbtnと同じです。機能も同等。
ただし、そのボタンにカーソルが重なったとき、ボタンを変化させるだけでなく、
制御文字列で指定されたスプライト制御を実行します。

制御文字列は次の形式で書いてください。
"C数字" 指定したスプライト番号を非表示にする
"P数字" 指定したスプライトを表示する
"P数字1,数字2" 数字1のスプライトのセル数字2を表示する

制御文字列では、上の三つをいくつでも連結して指定できます。

複合ボタンでは、「どれにもカーソルが重なっていないとき」の指定が必要です。
それをexbtn_dで実現します。

ボタンは他のものと同様、文字列スプライトでも普通の画像スプライトでもOKです。

他にも、以下の機能が追加されています。

Sチャンネル,(ファイル名)で音声再生も出来ます。
Mスプライト番号,X,Yでスプライトの移動も出来ます。

S,M記法はver.2.49以降。
例)
スプライト番号10を非表示にする。
"C10"
例)
スプライト番号11を非表示、10を表示にする。
"C11P10"
例)
スプライト番号11を非表示、10のセル番号2とスプライト番号9を表示にする。
"C11P10,2P9"
例)
チャンネル1でse.wavを再生する。
"S1,(se.wav)"
例)
スプライト番号4を座標(20,30)へ移動する。
"M4,20,30"

exbtn_d / spbtn /
page top / list / main

Ver.2.48【実行節のみ】
いーえっくすびーてぃーえぬでぃー、えくすとらぼたんでふぉると
exbtn_d

画像ボタン

exbtn_d STR

文字列スプライト制御文字列

複合ボタンでどれにもカーソルが重なっていないときの指定をします。

例)
どのボタン上にもマウスカーソルが無いときに、スプライト番号3と7のセル0を表示、スプライト番号4,5,6を非表示にする。
exbtn_d "P3C4C5C6P7,0"

/
page top / list / main

Ver.2.48【定義節・実行節両用】
えぐぜくでぃーえるえる
exec_dll

プラグイン・アーカイブ

exec_dll STR

文字列'/'で区切られたDLLファイル名とパラメータ

指定されたパラメータを渡して指定されたDLLを呼び出します。

例)
「テストですよー。」をパラメータとして「execdll.dll」を呼び出す。
exec_dll "execdll.dll/テストですよー。"

/
page top / list / main

Ver.2.48【定義節・実行節両用】
えふしーえいちけい、ふぁいるちぇっく
fchk

条件式・ループ書式

fchk STR

文字列読み込ん済みか確認したいファイル名

ファイルログに画像タグが記録されているか調べます。
if文中で使います。その画像タグがゲーム中で読まれていれば真です。
タグが違えば、同じファイルでも違うものとみなされます。

例)
ld c,":a;test.bmp",1
if fchk ":a;test.bmp" ;真
if fchk "test.bmp"  ;偽

/
page top / list / main

Ver.2.48【実行節のみ】
ふぁいるいぐじすと
fileexist

追加機能

fileexist %VAR,STR

数字変数結果を取得する変数(0:無い、1:ある)
文字列ファイル名

ファイルが存在すれば1、しなければ0を返します。nsaアーカイブからも検索します。

例)

fileremove /
page top / list / main

Ver.2.48【定義節のみ】
ふぁいるろぐ
filelog

ファイルアクセスログ・グローバル変数

filelog

ファイルアクセスログをとることを指定します。
一度でも読み込んだ画像タグは、すべて記憶します。
なお、タグが違えば、同じファイルでも違うものとみなされます。
この命令もglobalonも使わなければ、NScr.exeはカレントに何も書きに行きませんので、CD起動が可能になります。

例)

/
page top / list / main

Ver.非公式【実行節のみ】
ふぁいるりむーぶ
fileremove

追加機能

fileremove STR

文字列ファイル名

ファイルを削除します。

例)

fileexist /
page top / list / main

Ver.2.48【実行節のみ】
ふらっしゅあうと
flushout

画像エフェクト

flushout NUM

数値エフェクトにかける時間(ミリ秒)

特殊効果です。やや重め。
命令の後は必ず別の背景をロードして表示してください。

例)
1秒かけてフラッシュアウトする
flushout 1000

/
page top / list / main

Ver.2.67【定義節・実行節両用】
ふぉんと
font

テキストウィンドウ

font STR

文字列フォント名

テキスト表示のフォントを変えます。
一回文字をクリアしたその次の表示から適用されますので、
画面に文字が表示されてないうちに使ったほうがいいと思います。

例)
表示するテキストのフォントを"MS 明朝"に変更する
font "MS 明朝"

setwindow /
page top / list / main

Ver.2.48【定義節・実行節両用】
ふぉー
for

条件式・ループ書式

for %VAR=NUM to NUM[ step NUM]

数字変数カウンタ
数値カウンタの初期値
数値カウンタの最終値
数値カウンタの増分

基本的にBASICと同じです。指定した変数がTOで指定した数を超えるまで
(STEPが負の時は、それより小さくなるまで)は、ループを繰り返します。
一回ごとにSTEPで指定した数を変数に加えます。
STEPは省略すると1になります。

(注意)
FORループをgoto文やselect文で抜けると、内部的にはループ中なので、
NScrのスタックを無駄に消費します。
その部分が無限ループでもない限りそのせいで落ちるということは
まずないですが、そういうコードはいわゆる「スパゲッティコード」
と呼ばれるもので、読みにくく、分かりにくくなっているはずです。
FOR文とNEXT文は見やすくインデントしてソースの上でも一対一対応
させるのがお勧めです。

また、途中で安全にループを抜けたい場合はBREAK文を使ってください。
(ループ内からgosubで飛んでループ内に戻ってくるのはOKです。
 むしろループの始まりと終わり、外と中がはっきりするのでお勧め)

例)
%1に1から10までの数値を加算する。
for %0=1 to 10
add %1,%0
next

next /
page top / list / main

Ver.2.48【定義節のみ】
げーむ
game

ゲームスタート・リセット・終了

game

定義ブロックを終了し、ゲームを実行します。

例)
定義ブロックを終了し、ゲームを実行する
game

*define / *start /
page top / list / main

Ver.非公式【実行節のみ】
げっとびーじーえむぼる、げっとびーじーえむぼりゅーむ
getbgmvol

音楽・SE演奏

getbgmvol %VAR

数字変数ボリューム(0~100)

bgmのボリュームを取得します。bgm命令とmp3命令で有効です。

例)
bgmの音量を%0に取得します
getbgmvol %0

bgm / bgmvol /
page top / list / main

Ver.2.48【実行節のみ】
げっとびーてぃーえぬたいまー、げっとぼたんたいまー
getbtntimer

画像ボタン

getbtntimer %VAR

数字変数btnwaitで消費した秒数

たとえば、右クリックなどで抜けた後、再び処理をbtnwaitに戻したいとします。その場合、btnwait命令が実際には何ミリ秒を使ったのかをgetbtntimer命令は返してくれるので、その分引いた秒数で実行すればうまくいきます。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
げっとしーせるなむ、げっとかすたむせれくとなんばー
getcselnum

システムカスタマイズ関連

getcselnum %VAR

数字変数選択肢の数の格納先

csel選択肢の数を取得する。

この命令で取得した数値以上の数値をcselbtnに指定しないこと。(by senzogawa)
例)
%0に選択肢の数を取得する
getcselnum %0

*customsel / csel / cselbtn / cselgoto / getcselstr / selectbtnwait /
page top / list / main

Ver.2.48【定義節・実行節両用】
げっとしーせるえすてぃーあーる、げっとしーせるすとりんぐ
getcselstr

システムカスタマイズ関連

getcselstr $VAR,NUM

文字変数文字列の格納先
数値選択肢の何番目か

cselで指定した文字列を取得します。

例)
0番目(最初)の選択肢の文字列を、$0に取得する
getcselstr $0,0

csel /
page top / list / main

Ver.2.48【実行節のみ】
げっとかーそる
getcursor

ボタンモード拡張

getcursor

btndefとbtnwait系命令の間に挟む。カーソル上右下左で-40,-41,-42,-43が返る。

例)
方向キーを取得するよう設定
getcursor

btndef / btntime / btntime2 / btnwait / getenter / getfunction / getinsert / getpage / gettab / getzxc / spclclk / useescspc / usewheel /
page top / list / main

Ver.2.48【実行節のみ】
げっとかーそるぽす、げっとかーそるぽじしょん
getcursorpos

システムカスタマイズ関連

getcursorpos %VAR,%VAR

数字変数テキストカーソルX座標の格納先
数字変数テキストカーソルY座標の格納先

テキストカーソル、つまりテキストウィンドウにおける文字の表示位置を取得します。

例)
テキストカーソルの座標を%0,%1に取得する
getcursorpos %0,%1

texec / textbtnwait / textgosub /
page top / list / main

Ver.2.92【実行節のみ】
げっとかーそるぽすつー、げっとかーそるぽじしょんつー
getcursorpos2

システムカスタマイズ関連

getcursorpos2 %VAR,%VAR

数字変数左上X座標
数字変数左上Y座標

getcursorpos命令と似ていますが、この命令は「最後に表示した文字の左上座標」を取得します。

例)
最後に表示した文字の左上座標を%0,%1に取得する。
getcursorpos2 %0,%1

getcursorpos / texec / texec2 / textbtnwait / textgosub /
page top / list / main

Ver.2.48【実行節のみ】
げっとえんたー
getenter

ボタンモード拡張

getenter

btndefとbtnwait系命令の間に挟む。リターンキーを押されたときに-19が返る。

例)
Enterキーを取得するよう設定
getenter

btndef / btntime / btntime2 / btnwait / getcursor / getfunction / getinsert / getpage / gettab / getzxc / spclclk / useescspc / usewheel /
page top / list / main

Ver.2.48【実行節のみ】
げっとふぁんくしょん
getfunction

ボタンモード拡張

getfunction

btndefとbtnwait系命令の間に挟む。F1~F12を押されたときに-21~-32が返る。

例)
機能キーを取得するよう設定
getfunction

btndef / btntime / btntime2 / btnwait / getcursor / getenter / getinsert / getpage / gettab / getzxc / spclclk / useescspc / usewheel /
page top / list / main

Ver.2.48【定義節・実行節両用】
げっといに
getini

各種情報取得

getini $VAR,STR,STR,STR

文字変数値を取得する変数
文字列iniファイル名
文字列セクション名
文字列キー名

iniファイルを開いて、データを文字変数に取得します。
順に、iniファイル名、セクション名、キー名です。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
げっといんさーと
getinsert

ボタンモード拡張

getinsert

btndefとbtnwait系命令の間に入れてください。
Insertキーをボタンモードで拾えるようになります。
-50が返ります。

例)
Insertキーを取得する
getinsert

btndef / btntime / btntime2 / btnwait / getcursor / getenter / getfunction / getpage / gettab / getzxc / spclclk / useescspc / usewheel /
page top / list / main

Ver.2.49【実行節のみ】
げっとろぐ
getlog

バックログカスタマイズ

getlog $VAR,NUM

文字変数ログ用の文字列の格納先
数値何ページ前か

バックログ用の文字列を取得します。改行情報やルビ情報も格納されています。
第一引数に格納先文字列変数、第二引数にcheckpageと同じく何ページ前かを指定します。

例)
%5ページ前のログを$0に取得する
getlog $0,%5

logsp /
page top / list / main

Ver.2.70【実行節のみ】
げっとろぐてきすと
getlogtext

バックログカスタマイズ

getlogtext $VAR,NUM

文字変数ログ用の文字列の格納先
数値何ページ前か

getlogとほぼ同じ機能ですが、strspと組み合わせる場合はこちらを使ってください。
今後はstrspとgetlogをメインに作っていきます。

例)

getlog / strsp /
page top / list / main

Ver.2.94【実行節のみ】
げっとえむくりっく、げっとみどるくりっく
getmclick

ボタンモード拡張

getmclick

従来のbtnwait命令に、getmclick命令を作りました。getfunction等と同じくbtndefとbtnwaitの間で使ってください。-70を返します。

例)

btndef / btntime / btntime2 / btnwait / getcursor / getenter / getfunction / getinsert / getpage / gettab / getzxc / spclclk / useescspc / usewheel /
page top / list / main

Ver.2.49【実行節のみ】
げっとまうすおーばー
getmouseover

システムカスタマイズ関連

getmouseover NUM,NUM

数値スプライト番号下限
数値スプライト番号上限

btndefとtextbtnwaitの間で使ってください。
指定した範囲のボタンについては、上に重なっただけでbtnloopから抜けます。

例)
0から9のスプライト番号のボタンにマウスカーソルが重なった場合を取得する。
btndef clear
getmouseover 0,9
textbtnwait %0

btndef / textbtnwait /
page top / list / main

Ver.2.48【実行節のみ】
げっとまうすぽす、げっとまうすぽじしょん
getmousepos

ボタンモード拡張

getmousepos %VAR,%VAR

数字変数マウスカーソルX座標の格納先
数字変数マウスカーソルY座標の格納先

マウスカーソルの座標を指定した変数に取得します。
clickposと違い、クリック待ちを発生させずに座標を取得することが出来ます。

例)
マウスカーソルの座標を%0,%1に取得する
getmousepos %0,%1

clickpos /
page top / list / main

Ver.非公式【実行節のみ】
げっとえむぴーすりーぼる、げっとえむぴーすりーぼりゅーむ
getmp3vol

音楽・SE演奏

getmp3vol %VAR

数字変数ボリューム(0~100)

mp3のボリュームを取得します。bgm命令とmp3命令で有効です。

例)
mp3の音量を%0に取得します
getmp3vol %0

mp3 / mp3vol /
page top / list / main

Ver.2.48【実行節のみ】
げっとねくすとらいん
getnextline

カーソル

getnextline %VAR,%VAR

数字変数次の行の行頭位置X座標の格納先
数字変数次の行の行頭位置Y座標の格納先

テキストウィンドウにおける次の行の行頭の位置を得ます。

例)
次の行の行頭位置座標を%0,%1に取得する
getnextline %0,%1

/
page top / list / main

Ver.2.48【実行節のみ】
げっとぺーじ
getpage

ボタンモード拡張

getpage

btndefとbtnwait系命令の間に入れてください。
PageUp PageDownをボタンモードで拾えるようになります。
-12,-13が返ります。

例)
PageUp,PageDownを取得する
getpage

btndef / btntime / btntime2 / btnwait / getcursor / getenter / getfunction / getinsert / gettab / getzxc / spclclk / useescspc / usewheel /
page top / list / main

Ver.2.48【定義節・実行節両用】
げっとぱらむ
getparam

追加機能

getparam %VAR|$VAR|s%VAR|i%VAR[,...]

特殊引数を格納する変数

呼び出し元でラベル名を指定した場合、呼び出し先では文字列として読み込むことが出来ます。
NScripterのどの命令でも、ラベル名の代わりに文字列を使うことが出来るというのをうまく利用してください。
たとえば、
*define
defsub usergoto
game

*label
ジャンプしました。\
end

*start
usergoto *label

*usergoto
getparam $0
;ここで、$0に"*label"が入る。
goto $0
;これで、goto "*label"→goto *labelと同じ

getparamで渡される変数と格納される変数が混在するととてもややこしいので、
defsubサブルーチン内で使う変数と呼び出し元スクリプト内で使う変数は分けましょう。
例えば、%0-%49までを普通のスクリプトで、%50-%99をdefsubサブルーチンで使うことにして、混在させない。
例)
サブルーチンsubを数値、文字列を引数に取る命令として定義
*define
defsub sub

*sub
getparam $50,%50
;$50に"文字列"、%50に12が代入される
return

*start
sub "文字列",12
例)
サブルーチンkakeru_4を数字変数、数値を引数に取る命令として定義
*define
defsub kakeru_4
game

*kakeru_4
getparam i%50,%51
;i%と書くと、呼び出し元の数字変数の変数番号が取得できる。この場合「3」
mov %%50,%51*4
;%%50と書くと、変数番号「%50」の数字変数への代入になります。つまりこの場合mul %3,4と同じ
return

*start
kakeru_4 %3,10
;%3は10*4=40になる
例)
サブルーチンrenketuを文字変数、文字列を引数に取る命令として定義
*define
defsub renketu
game

*renketu
getparam s%50,$51
;文字変数の場合はs%
add $%50,$51
;$%50と書くと、変数番号「%50」の文字変数への代入になります。
return

*start
mov $1,"れんけつ"
renketu $1,"てすと"
;$1は"れんけつてすと"となる。

defsub /
page top / list / main

Ver.2.48【定義節・実行節両用】
げっとれぐ、げっとれじすとり
getreg

各種情報取得

getreg $VAR,STR,STR

文字変数レジストリのデータを取得する変数
文字列キーの名前
文字列値の名前

レジストリを開いて、データを文字変数に取得します。
HKEY_CURRENT_USER以下のキーしか選べません。

例)
getreg $0,"software\leaf\toheart","datadir"

/
page top / list / main

Ver.2.48【定義節・実行節両用】
げっとれっと、げっとりたーん
getret

プラグイン・アーカイブ

getret %VAR

数字変数DLLから返る数値を受け取る変数

getret $VAR

文字変数DLLから返る文字列を受け取る変数

exec_dllで実行したDLLから返される値を取得します。数値と文字列を一つずつ取得できます。
その他、textfieldなどの命令が戻す値を取得するためにも使用します。

例)
例)

exec_dll / textfield /
page top / list / main

Ver.2.60【実行節のみ】
げっとせーぶすとりんぐ
getsavestr

セーブ・ロード

getsavestr $VAR,NUM

文字変数取り出した文字列の格納先
数値セーブ番号

savegame2で保存した文字列を取り出します。

例)
savegame2にてセーブ番号12で保存した文字列を$1に取得する。
getsavestr $1,12

savegame2 /
page top / list / main

Ver.2.48【実行節のみ】
げっとすくりーんしょっと
getscreenshot

スクリーンショット

getscreenshot NUM,NUM

数値横サイズ
数値縦サイズ

スクリーンショットを取ります。メモリ内に確保するだけなので、savescreenshotでファイルに保存する必要があります。

例)
横160縦120のサイズでスクリーンショットを取得する
getscreenshot 160,120

deletescreenshot / savescreenshot / savescreenshot2 /
page top / list / main

Ver.非公式【実行節のみ】
げっとえすいーぼる、げっとえすいーぼりゅーむ
getsevol

音楽・SE演奏

getsevol %VAR

数字変数ボリューム(0~100)

seのボリュームを取得します。

例)
seの音量を%0に取得します
getsevol %0

chvol / dwave / sevol / wave /
page top / list / main

Ver.2.49【実行節のみ】
げっとすきっぷおふ
getskipoff

システムカスタマイズ関連

getskipoff

btndefとtextbtnwaitの間で使ってください。
スキップオフを-60で、オートモードオフを-61で取得します。

例)
スキップがOFFになったらスキップ中表示を解除するルーチンを呼び出す。
btndef clear
getskipoff
textbtnwait %0
if %0=-60 gosub *clearskipicon

btndef / textbtnwait /
page top / list / main

Ver.2.61【実行節のみ】
げっとえすぴーもーど、げっとすぷらいともーど
getspmode

画像表示

getspmode %VAR,NUM

数字変数結果を受け取る変数
数値スプライト番号

スプライトが表示状態なら1、非表示状態なら0を返す命令です。

例)
スプライト番号10が表示状態かどうかを%2に取得する。
getspmode %2,10

lsp / lsph /
page top / list / main

Ver.2.53【実行節のみ】
げっとえすぴーさいず、げっとすぷらいとさいず
getspsize

画像表示

getspsize NUM,%VAR,%VAR[,%VAR]

数値スプライト番号
数字変数幅を取得する変数
数字変数高さを取得する変数
数字変数セル数を取得する変数

スプライトのサイズを取得します。
セル数を受け取る変数は省略できます。

Ver.2.54にて第三引数が追加されました。
例)
スプライト番号0の幅、高さ、セル数を、それぞれ%0,%1,%2に取得する。
getspsize 0,%0,%1,%2

/
page top / list / main

Ver.2.48【実行節のみ】
げっとたぶ
gettab

ボタンモード拡張

gettab

btndefとbtnwait系命令の間に挟む。tabキーを押したときに=-20が返る。

例)
Tabキーを取得するよう設定
gettab

btndef / btntime / btntime2 / btnwait / getcursor / getenter / getfunction / getinsert / getpage / getzxc / spclclk / useescspc / usewheel /
page top / list / main

Ver.2.49【定義節・実行節両用】
げっとたぐ
gettag

文章タグ関連

gettag $VAR|%VAR[,...]

変数タグ情報の格納先変数

*pretextgosubで指定したサブルーチンから、タグの内容を取得します。
splitに似ていますが、""は必要ありません。/区切りです。
省略されたものは""もしくは0で補います。
タグそのものが省略されているときは、すべてが""もしくは0で補われます(ここがポイント)
例)gettag $0,$1 になってる場合、

[太郎/0001.wav]テスト用の文章です。 ;→$0="太郎" $1="0001.wav"
省略することも出来ます。 ;→$0="" $1=""

ボイスや名前タグの処理に使ってください。

例)
タグの情報を$0,$1に格納する
gettag $0,$1

pretextgosub /
page top / list / main

Ver.2.72【実行節のみ】
げっとたぐろぐ
gettaglog

バックログカスタマイズ

gettaglog $VAR,NUM

文字変数ログのタグ文字列の格納先
数値ログのページ番号

getlog命令と同じ要領で、指定した数だけ前のページのタグを取得します。
バックログにタグも残りますので、バックログのカスタマイズをするときに、名前や音声をタグで指定しておけば、それを読み出すことが出来るので便利です。

タグ指定が無かった場合は""を返します。
ここで、gettag命令では文字列を/区切りで分離して変数に格納できましたが、gettaglog命令ではそれが出来ません。
次のようにすれば、gettagと同じように分離出来ます。

例)
gettag $1,$2 のようなことをログに対してしたい場合
gettaglog $0,2
split $0,"/",$1,$2

gettag /
page top / list / main

Ver.2.48【実行節のみ】
げっとてきすと
gettext

テキストウィンドウ

gettext $VAR

文字変数テキストウィンドウ表示文字列の格納先

現在テキストウィンドウに表示されているテキストを取得します。

例)
現在テキストウィンドウに表示されているテキストを$0に取得
gettext $0

/
page top / list / main

Ver.2.65【実行節のみ】
げっとてきすとぼたんすとりんぐ
gettextbtnstr

テキストボタン

gettextbtnstr $VAR,NUM

文字変数テキストボタンの内容の格納先
数値テキストボタン番号

テキストボタン番号に対応した文字列を取得します。
無い場合は""が代入されます。

例)
テキストボタン番号12に対応した文字列を$0に取得する。
gettextbtnstr $0,12

<> /
page top / list / main

Ver.2.48【実行節のみ】
げっとたいまー
gettimer

ウェイト・タイマー

gettimer %VAR

数字変数経過時間(ミリ秒)

内部タイマの値を取得する命令です。
最後にresettimerを使ってから経った時間を、ミリ秒単位で返します。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
げっとばーじょん
getversion

各種情報取得

getversion %VAR

数字変数バージョンを整数にしたものを取得する変数

バージョンは3桁の整数で返ってきます。
実際のバージョンの100倍の数字です。
つまり、Ver1.90ならば190になります。

例)

/
page top / list / main

Ver.非公式【実行節のみ】
げっとぼいすぼる、げっとぼいすぼりゅーむ
getvoicevol

音楽・SE演奏

getvoicevol %VAR

数字変数ボリューム(0~100)

voiceのボリュームを取得します。

例)
voiceの音量を%0に取得します
getvoicevol %0

chvol / dv / v / voicevol /
page top / list / main

Ver.2.54【実行節のみ】
げっとうぃんどうさいず
getwindowsize

各種情報取得

getwindowsize %VAR,%VAR

数字変数ウィンドウ幅を取得する変数
数字変数ウィンドウ高さを取得する変数

ウィンドウのクライアント領域(メニューなどを除いた、画像が描画される部分の大きさ)を取得します。デフォルトでは640と480です。

例)
ウィンドウの幅と高さを、それぞれ%0,%1に取得する。
getwindowsize %0,%1

/
page top / list / main

Ver.2.48【実行節のみ】
げっとずぃーえっくすしー
getzxc

ボタンモード拡張

getzxc

btndefとbtnwait系命令の間に入れてください。
z,x,cキーをボタンモードで拾えるようになります。
-51,-52,-53が返ります。

例)
z,x,cキーを取得する
getzxc

btndef / btntime / btntime2 / btnwait / getcursor / getenter / getfunction / getinsert / getpage / gettab / spclclk / useescspc / usewheel /
page top / list / main

Ver.2.48【定義節のみ】
ぐろーばるおん
globalon

ファイルアクセスログ・グローバル変数

globalon

グローバル変数を使う設定をします。

例)

value /
page top / list / main

Ver.2.48【定義節・実行節両用】
ごーさぶ
gosub

ジャンプ

gosub LABEL

ラベル飛び先

そのラベルをサブルーチンとしてコールします。
return文で、サブルーチンから返ってきて、gosub文の次から動作を再開します。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
ごーとぅ
goto

ジャンプ

goto LABEL

ラベル飛び先

そのラベルにジャンプします。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
ひゅーまんおーだー
humanorder

画像表示

humanorder STR,NUM[,NUM]

文字列"rcl"のように、"r","c","l"の優先順位を指定する
数値エフェクト番号。2以上の場合は後の引数も必要

立ち絵間の優先順位を指定する。

例)
立ち絵を手前から右、中央、左に表示させる
humanorder "rcl",1

humanz /
page top / list / main

Ver.非公式【定義節・実行節両用】
ひゅーまんぽす、ひゅーまんぽじしょん
humanpos

画像表示

humanpos NUM,NUM,NUM

数値l指定時の基準X座標
数値c指定時の基準X座標
数値r指定時の基準X座標

立ち絵の基準となるX座標を設定します。
この命令で指定した座標に立ち絵の真ん中を合わせることになります。
おそらくデフォルトは160,320,480です。

ver.2.92以降、実行節での使用が可能
例)

ld /
page top / list / main

Ver.2.48【定義節のみ】
ひゅーまんずぃー、ひゅーまんぜっと
humanz

画像表示

humanz NUM

数値立ち絵を表示するレイヤ直下のスプライト番号

スプライトと立ち絵の重なる時の優先順位(Zオーダー)を指定します。
指定した番号のスプライトのすぐ上に立ち絵が表示されることになります。
デフォルトは、25です。

例)

ld / windowback /
page top / list / main

Ver.2.48【定義節・実行節両用】
いふ
if

条件式・ループ書式

if CONDITION[{&&,&} CONDITION[...]] SENTENCE

条件式比較演算子、チェック命令を用いた、真偽を返す式
実行文条件式が真の時に実行される文

条件判断文です。次の形式で使います。
 if 条件式 ({&&,&} 条件式) 実行文
ifは、条件が成立した場合、notifはしなかった場合、残りの文を実行します。
成立しなかった場合、その行は読み飛ばされます。
&&も&も同じ意味で、条件をさらに絞り込むのに使います。
条件式には数字、もしくはfchk関数が使えます。
   <条件式>
   数字 {>,<,=,>=,<=,==,!=,<>} 数字
   もしくは、
   fchk 文字列

   <,>,=,>=,<=は意味がわかると思います。
   ==は=と同じで、「等しい」、!=は<>と同じ意味で「等しくない」です。
   fchkは、文字列で指定された画像を読み込んだことがあれば真になります。

ver.2.93にて、"&"だけでなく"|"(OR演算)も可能。ただし、"&"と"|"は混在不可。
例)
%0の内容が1だったら、2ピクセル500ミリ秒間横に揺らす。
if %0=1 quakex 2,500 ; 基本形
例)
%0の内容が1で、かつ%2の内容が5だったら、終了する。
if %0=1 && %2=5 end ; 両方成立したら実行
例)
%0の内容が2だったら、%1に1を代入し、2行後の文にスキップする。
if %0=2 mov %1,1:skip 2 ; :で、行をつなげられる。

/
page top / list / main

Ver.2.48【定義節・実行節両用】
いんく、いんくりめんと
inc

計算式・変数

inc %VAR

数字変数インクリメント対象の変数

その変数の値を1増やします。

例)

/
page top / list / main

Ver.2.49【定義節・実行節両用】
いんでんと
indent

文章タグ関連

indent NUM

数値インデントする文字数

改行時に指定文字数だけ右インデントします。
pretextgosubと組み合わせれば、台詞内改行の時だけ右に何文字かずらしたいというときに使えます。

例)
改行時に2文字分インデントする
indent 2

pretextgosub /
page top / list / main

Ver.2.48【実行節のみ】
いんぷっと
input

追加機能

input $VAR,STR,STR,NUM,NUM

文字列入力結果を取得する変数
文字列表示するメッセージ
文字列デフォルトの文字列
数値最大文字数
数値全角文字強制フラグ(0:半角許容、1:全角強制)

inputstrと同じくテキスト入力ボックスを出します。inputはデフォルト文字列を表示できます。
最後の数字は0か1かで、全角文字強制フラグです。

例)

inputnum / inputstr / textfield /
page top / list / main

Ver.非公式【実行節のみ】
いんぷっとなむ、いんぷっとなんばー
inputnum

追加機能

inputnum %VAR,NUM,NUM,NUM,NUM

数字変数入力結果を取得する変数
文字列表示するメッセージ
数値ウィンドウの幅
数値ウィンドウの高さ
数値入力エリアの幅
数値入力エリアの高さ

数字変数に数値を入力するダイアログを表示します。
文字列には、ダイアログに表示するメッセージを入れてください。
最後の4つは省略可能で、順に、全体のウィンドウサイズX,Y、文字入力ボックスサイズX,Yです。

例)

input / inputstr / textfield /
page top / list / main

Ver.2.48【実行節のみ】
いんぷっとえすてぃーあーる、いんぷっとすとりんぐ
inputstr

追加機能

inputstr $VAR,STR,NUM,NUM[,NUM,NUM,NUM,NUM]

文字変数入力結果を取得する変数
文字列表示するメッセージ
数値最大文字数
数値全角文字強制フラグ(0:半角許容、1:全角強制)
数値ウィンドウの幅
数値ウィンドウの高さ
数値入力エリアの幅
数値入力エリアの高さ

文字変数に文字列を入力するダイアログを表示します。
文字列には、ダイアログに表示するメッセージを入れてください。
最初の数字は最大文字数、最後の数字は0か1かで、全角文字強制フラグです。
最後の4つは省略可能で、順に、全体のウィンドウサイズX,Y、文字入力ボックスサイズX,Yです。

例)

input / inputnum / textfield /
page top / list / main

Ver.2.48【定義節のみ】
いんさーとめにゅー
insertmenu

ウィンドウメニュー関連

insertmenu STR,NAME[,NUM]

文字列メニューとして表示する文字列
名前既定の機能コード
数値サブメニューの階層

メニューを挿入します。常に先頭に挿入されます。

例)
メニューを作成する。
insertmenu "終了",END
insertmenu "バージョン情報",VERSION
insertmenu "次の選択肢に進む",SKIP
insertmenu "オートモード",AUTO
insertmenu "環境設定",SUB
;SUBはサブメニューが開くことをあらわします。
insertmenu "フォント",FONT,1
insertmenu "ウェーブ",SUB,1
insertmenu "ON",WAVEON,2
insertmenu "OFF",WAVEOFF,2
insertmenu "ボリューム",DWAVEVOLUME,2
insertmenu "テキスト",SUB,1
insertmenu "遅い",TEXTSLOW,2
insertmenu "普通",TEXTMIDDLE,2
insertmenu "速い",TEXTFAST,2
insertmenu "画面",SUB,1
insertmenu "フルスクリーン",FULL,2
insertmenu "ウィンドウ",WINDOW,2
insertmenu "CD-DA",SUB,1
insertmenu "ON",CDON,2
insertmenu "OFF",CDOFF,2
insertmenu "クリック設定",SUB,1
insertmenu "普通",CLICKDEF,2
insertmenu "ページごと",CLICKPAGE,2

deletemenu / killmenu / resetmenu /
page top / list / main

Ver.2.48【定義節のみ】
いんとりみっと、いんたじゃーりみっと
intlimit

計算式・変数

intlimit NUM,NUM,NUM

数値数字変数番号
数値最小値
数値最大値

数字変数の値を制限します。最大値を超えれば最大値に、最小値を超えれば最小値になります。
順に、数字変数番号,最小値,最大値です。

例)
%0が10から20までの値しか取らないようにする。
intlimit 0,10,20

/
page top / list / main

Ver.2.48【実行節のみ】
いずだうん
isdown

ボタンモード拡張

isdown %VAR

数字変数判定結果の格納先

ボタン押下中かどうかを判定して結果を変数に格納する。
離していれば0、押していれば1が返る。

例)
左クリック中は「0」を出力し続け、離すと改行して止まり、右クリックすると終了する。
*waitloop
btnwait %0
if %0=0 goto *onlclick
end
*onlclick
isdown %1
if %1=1 puttext "0/":goto *onlclick
puttext ""
goto *waitloop

btndown /
page top / list / main

Ver.2.48【実行節のみ】
いずふる
isfull

ウィンドウメニュー関連

isfull %VAR

数字変数結果の格納先(0:通常,1:フルスクリーン)

現在フルスクリーンかどうかを取得します。

Alt+Returnでもスクリーンモードを変えられるので、この命令以外では現在のスクリーンモードは取得できません。
例)
フルスクリーンかどうかを%0に取得し、判定結果と逆の状態にする。
isfull %0
if %0==0 menu_full
notif %0==0 menu_window

menu_full / menu_window /
page top / list / main

Ver.2.49【実行節のみ】
いずぺーじ
ispage

システムカスタマイズ関連

ispage %VAR

数字変数判定結果の格納先

textgosubサブルーチン時、呼び出し理由が改ページだったら1、
単なるクリック待ちだったら0を指定した数字変数に返します。

例)
改ページ待ちかどうかを%0に取得する
ispage %0

textgosub /
page top / list / main

Ver.2.48【実行節のみ】
いずすきっぷ
isskip

システムカスタマイズ関連

isskip %VAR

数字変数結果を受け取る変数

現在がスキップモードなら1、オートモードなら2、通常モードなら0を返します。

既読スキップONでも、未読文章の場合は0が返ります。(by senzogawa)
例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
あいとぅえい、あすきーとぅいんたじゃー
itoa

計算式・変数

itoa $VAR,NUM

文字変数結果の代入先
数値文字列にする数値

数値を文字列に変換します。ただし、半角文字になります。

例)
120を文字列とした値を%0に、%2の内容を文字列とした値を%1にそれぞれ代入する。
itoa $0,120
itoa $1,%2

/
page top / list / main

Ver.2.49【定義節・実行節両用】
いとあつー、いんてじゃーとぅあすきー
itoa2

計算式・変数

itoa2 $VAR,NUM

文字変数全角数字の格納先
数値変換対象の数値

itoaと同様に数値を文字列に変換しますが、この命令では全角文字列になります。表示したいときに便利です。

例)
%4に格納されている数値を全角数字の文字列に変換したものを$0に取得する。
itoa2 $0,%4

itoa /
page top / list / main

Ver.2.48【実行節のみ】
じゃんぷびー、じゃんぷばっく
jumpb

ジャンプ

jumpb

直前の~記号まで戻ります。

表示文中だけでなく、コメント内でも「~」が混ざる文字(下記参照)がある場合、そこを飛び先としてしまうため、要注意。(by senzogawa)
×ミн円樫吸鯨降止淳厨掻蓄冬梅敷盆欲凭嘸宀恠捫桎毯
例)

/
page top / list / main

Ver.2.48【実行節のみ】
じゃんぷえふ、じゃんぷふろんと
jumpf

ジャンプ

jumpf

次の~記号までジャンプします。ラベル名を考えるのがめんどくさいときに使ってください。しかし、当然入れ子構造には出来ないので、とび先がすぐ見えるときだけに限定して使うほうがいいです。

表示文中だけでなく、コメント内でも「~」が混ざる文字(下記参照)がある場合、そこを飛び先としてしまうため、要注意。(by senzogawa)
×ミн円樫吸鯨降止淳厨掻蓄冬梅敷盆欲凭嘸宀恠捫桎毯
例)
jumpf
この文は飛ばされます。
~
この文は表示されます。

/
page top / list / main

Ver.2.48【実行節のみ】
きどくもーど
kidokumode

既読スキップ

kidokumode NUM

数値0:強制スキップ、1:既読スキップ

既読スキップモードと強制スキップモードを切り替える

例)
既読スキップモードをOFFにし、強制スキップにする
kidokumode 0

kidokuskip /
page top / list / main

Ver.2.48【定義節のみ】
きどくすきっぷ
kidokuskip

既読スキップ

kidokuskip

この命令を使うと、「次の選択肢へ進む」が既読スキップになります。既読データはファイルに保存されますが、スクリプトが変わると、変わった部分以降は、ずれてきます。
既読データは「kidoku.dat」に保存されます。

例)

kidokumode /
page top / list / main

Ver.2.48【定義節のみ】
きるめにゅー
killmenu

ウィンドウメニュー関連

killmenu NUM

数値消すメニュー項目の位置

左から数えて、その数字の位置にあるメニューを消してしまいます。
なお、二度目以降は、前のメニューがなくなった分、位置がずれることに注意してください。
0が一番左で、右へ行くたびひとつづつ増えます。

CD-DAについては、なぜか7を指定しないと消えません。
バージョン情報と終了は8,9です。
例)
バージョン情報と終了以外のメニュー項目を消す
killmenu 7
killmenu 5
killmenu 4
killmenu 3
killmenu 2
killmenu 1
killmenu 0

deletemenu / insertmenu / resetmenu /
page top / list / main

Ver.2.73【実行節のみ】
きんそく
kinsoku

追加機能

kinsoku {on,off}

列挙on:禁則処理する、off:禁則処理しない

kinsoku onで禁則処理をオンにします。kinsoku offで禁則処理をオフにします。

通常の文章表示、strspの両方に作用します。(by senzogawa)
例)

strsp /
page top / list / main

Ver.2.48【実行節のみ】
らべるいぐじすと
labelexist

追加機能

labelexist %VAR,LABEL

数字変数確認結果(0:ない、1:ある)
ラベル確認したいラベル

ラベルがあれば1、ラベルが無ければ0を返します。

非公式な命令です。(by senzogawa)
例)
ラベル「*message」があれば、gosubで呼び出す。
labelexist %0,*message
if %0==1 gosub *message

gosub / goto /
page top / list / main

Ver.2.48【定義節のみ】
らべるろぐ
labellog

ファイルアクセスログ・グローバル変数

labellog

ファイルログと同じような形式で、ラベルのログを取ります。
 goto gosub 等の飛び先に指定されたか、スクリプトを読んでいて通過したラベル名をすべて記憶します。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
れいやーめっせーじ
layermessage

プラグイン・アーカイブ

layermessage NUM,STR

数値setlayerで指定したレイヤ番号
文字列レイヤに送信するメッセージ

指定されたレイヤ番号に任意の文字列を送信します。
レイヤはこの命令を利用して様々な効果を実現できます。
BOOL Message (char *message,int *returnint,char *returnstr);
で受け取ることができます。

例)

setlayer /
page top / list / main

Ver.2.48【定義節・実行節両用】
えるしーえいちけい、らべるちぇっく
lchk

条件式・ループ書式

lchk LABEL

ラベル読み込み済みか確認したいラベル

fchkと同じく、if文中で使います。そのラベルを読んでいれば真です。
 NScrのラベル名には(ここ以外のどの場所でもですが)文字変数が使えますので、
lchk *test
lchk "*test"
lchk $0
 上のみっつは、どれも正しい表記です。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
えるでぃー、ろーど
ld

画像表示

ld {l,c,r},STR,EFFECT

列挙立ち絵の表示位置(l:左、c:中央、r:右)
文字列ファイル名
エフェクト立ち絵表示時のエフェクト

立ち絵をロードします。左(l)、右(r)、真ん中(c)から場所を選べます。
文字列で画像ファイルを指定してください。タグが使えます。

例)

cl / effect / humanz /
page top / list / main

Ver.2.48【定義節・実行節両用】
れん、れんくす
len

計算式・変数

len %VAR,STR

数字変数長さの格納先
文字列長さを取得する文字列

文字列の長さを返します。

例)
$0の長さを%0に格納する
len %0,$0

mid /
page top / list / main

Ver.2.48【定義節のみ】
らいんぺーじ
linepage

クリック待ち

linepage

行末に\を入れなくても表示文の改行を改ページとみなすようにします。
AVGなどで一行ずつしか表示しないとき改行記号を入れなくてもよくなります。
@や\、clickstrを同時に使う場合は動作に気をつけてください。

例)

@ / \ / clickstr /
page top / list / main

Ver.2.65【定義節・実行節両用】
りんくからー
linkcolor

テキストボタン

linkcolor COLOR,COLOR

色値テキストボタンの通常時の色
色値テキストボタンのカーソル時の色

linkcolor カーソルオフ時の色,カーソルオン時の色
テキストボタンの色を設定します。
デフォルトでは、黄色と水色です。

例)
テキストボタンの通常時の色を#FFFF88、カーソル時の色を#88FF88にする。
linkcolor #FFFF88,#88FF88

<> /
page top / list / main

Ver.2.48【実行節のみ】
ろーどげーむ
loadgame

セーブ・ロード

loadgame NUM

数値セーブ番号

そのセーブ番号からロードします。何の確認もしませんので注意。
もしロードが失敗すると、何も起こらずに次の処理に移ります。

例)

loadgosub /
page top / list / main

Ver.2.48【定義節のみ】
ろーどごーさぶ
loadgosub

セーブ・ロード

loadgosub LABEL

ラベルロード直後に呼び出されるサブルーチン

ロード直後に呼び出すサブルーチンを指定します。
このサブルーチンは、セーブした状態を復元したその直後に呼ばれます。
つまり、セーブできるところならどこからでも呼ばれうるものであることに注意して慎重にスクリプトを組んでください。
プラグインで音楽を再生したりしている場合、その復元は手動でしなければならないので、そのためにこの命令を用意しました。

プラグインで音楽を再生したりしている場合は必要
例)
ロード直後に*loadlbを呼び出すよう指定
loadgosub *loadlb

/
page top / list / main

Ver.2.48【実行節のみ】
ろけいと
locate

テキスト表示

locate NUM,NUM

数値横位置(文字単位)
数値縦位置(文字単位)

文字の表示位置を変えます。単位は文字単位です。ピクセルではありません。

例)

/
page top / list / main

Ver.2.49【実行節のみ】
ろぐすぷらいと、ろぐえすぴー
logsp

バックログカスタマイズ

logsp NUM,STR,NUM,NUM[,COLOR[,COLOR[,...]]]

数値スプライト番号
文字列getlogで取得した文字列
数値表示先左上X座標
数値表示先左上Y座標
色値ログ文字色(デフォルト#FFFFFF)
色値カーソル時ログ文字色(無指定:単セル)

getlogで取得した文字列から、バックログ用の文字画像をスプライトとして取得します。
いったん文字列を経由するのは、将来的に加工することを考えてのことです。
第一引数にスプライト番号、第二引数にバックログ文字列、第三~四引数で左上の座標、第五引数行以降は、文字色(元の文字色に関係なく単色になります)を指定します。省略すると#FFFFFF、複数指定すると、その数だけセルのある複数セルスプライトになります

例)
バックログ文字列をスプライト番号8、左上座標60,90で描画
logsp 8,$0,60,90
例)
バックログ文字列をスプライト番号8、左上座標60,90、色#FFFF88で描画
logsp 8,$0,60,90
例)
バックログ文字列をスプライト番号8、左上座標60,90、セル0#888888,セル1#FFFF88で描画
logsp 8,$0,60,90,#888888,#FFFF88

getlog / logsp2 /
page top / list / main

Ver.2.49【実行節のみ】
ろぐすぷらいとつー、ろぐえすぴーつー
logsp2

バックログカスタマイズ

logsp2 NUM,STR,NUM,NUM,NUM,NUM,NUM,NUM[,COLOR[,COLOR[,...]]]

数値スプライト番号
文字列getlogで取得した文字列
数値表示先左上X座標
数値表示先左上Y座標
数値表示文字幅
数値表示文字高さ
数値表示文字間隔横
数値表示文字間隔縦
色値ログ文字色(デフォルト#FFFFFF)
色値カーソル時ログ文字色(無指定:単セル)

logspの拡張版で、文字サイズが指定出来ます。

COLOR指定については公式には確認とっていません。(by senzogawa)
例)
バックログ文字列をスプライト番号2、左上座標150,20、文字サイズ17,17、文字間隔0,1で描画
logsp2 2,$0,150,20,17,17,0,1

getlog / logsp /
page top / list / main

Ver.2.48【定義節のみ】
るっくばっくぼたん
lookbackbutton

回想モード

lookbackbutton STR,STR,STR,STR

文字列上方向選択状態のボタン用画像
文字列上方向非選択状態のボタン用画像
文字列下方向選択状態のボタン用画像
文字列下方向非選択状態のボタン用画像

回想モード用のボタンをロードします。
左から順に、上方向選択状態、上方向非選択状態、下方向選択状態、下方向非選択状態、です。
デフォルトでは"uoncur.bmp","uoffcur.bmp","doncur.bmp","doffcur.bmp"です。
画像の大きさがすべて同じでないと誤動作します。
回想ボタンはアニメーションできません。
回想ボタンは、テキストウィンドウの右上下端に貼り付けられます。
位置は変えられないので、透過をうまく使って位置調整してください。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
るっくばっくからー
lookbackcolor

回想モード

lookbackcolor

色値テキスト文字色

回想モードでのテキスト文字色を指定します。
HTML形式で色を指定してください。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
るっくばっくふらっしゅ
lookbackflush

回想モード

lookbackflush

回想バッファを消去します。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
るっくばっくおふ
lookbackoff

回想モード

lookbackoff

回想バッファにデータを蓄積しないようにします。
lookbackonで蓄積を再開できます。

例)

lookbackon /
page top / list / main

Ver.2.48【実行節のみ】
るっくばっくおん
lookbackon

回想モード

lookbackon

回想バッファにデータを蓄積するようにします。
lookbackoffした後で元に戻すために使用します。

例)

lookbackoff /
page top / list / main

Ver.2.48【定義節のみ】
るっくばっくえすぴー、るっくばっくすぷらいと
lookbacksp

回想モード

lookbacksp NUM,NUM

数値上側ボタンのスプライト番号
数値下側ボタンのスプライト番号

バックログボタンがデフォルトのものではなくスプライトボタンになる。

例)
バックログボタンに、上側2、下側3のスプライトを使用する
lookbacksp 2,3

lookbackbtn /
page top / list / main

Ver.2.48【定義節のみ】
るっくばっくぼいす
lookbackvoice

回想モード

lookbackvoice

文字列ページめくり音のWAVEファイル名

回想モードで、一枚めくるときのWAVEファイルを指定します。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
るーぷびーじーえむ
loopbgm

音楽・SE演奏

loopbgm STR,STR

文字列冒頭部ファイル名
文字列ループ部ファイル名

冒頭部に指定したファイルを最初に演奏し、以降は停止されるまでループ部に指定したファイルを繰り返し演奏します。

例)
bgm.s.wav -> bgm_l.wav -> bgm_l.wav -> ...(以後ループ) という風に演奏します。
loopbgm "bgm_s.wav","bgm_l.wav"

/
page top / list / main

Ver.2.48【実行節のみ】
るーぷびーじーえむすとっぷ
loopbgmstop

音楽・SE演奏

loopbgmstop

繰り返し演奏を停止します。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
えるあーるとらっぷ、れふとらいととらっぷ
lr_trap

クリック監視フラグジャンプ

lr_trap LABEL

ラベル左右クリックされた場合の飛び先

lr_trap off

列挙トラップの解除用

左右クリックに反応するtrap命令です。

例)
例)

/
page top / list / main

Ver.2.48【実行節のみ】
えるあーるとらっぷつー、れふとらいととらっぷつー
lr_trap2

クリック監視フラグジャンプ

lr_trap2 LABEL

ラベル左右クリックか「次の選択肢に進む」の場合の飛び先

lr_trap2 off

列挙トラップの解除用

左右クリックと「次の選択肢に進む」に反応するtrap命令です。

例)
例)

/
page top / list / main

Ver.2.49【実行節のみ】
えるあーるくりっく
lrclick

クリック待ち

lrclick

左クリックもしくは右クリックを待ちます。
どちらで返ってきたかはgetretで取得できます。
getret %0
で、0で右クリック、1で左クリックです。

例)
左クリックもしくは右クリックを待つ。
lrclick

click / getret /
page top / list / main

Ver.2.48【実行節のみ】
えるえすぴー、ろーどすぷらいと
lsp

画像表示

lsp NUM,STR,NUM,NUM[,NUM]

数値スプライト番号(0~255)
文字列画像ファイル又はスプライト文字列
数値左上X座標
数値左上Y座標
数値不透過度(0~255)

スプライトを表示します。スプライトは0から49までです。
数字は順に左上のX,Y座標、文字列で画像ファイルを指定してください。
lspとlsphの違いは、最初のスプライトの状態です。
最後の数字は、スプライトの透過度です。これは省略できます。
lspは表示モード、lsphは非表示モードです。

スプライト番号は、実際には0~999まで使えるようです。(by senzogawa)
ver.2.93以降、無アニメ指定":c/2,0,3;"を":c/2;"で代替可能。
また、ファイル名を">幅,高さ,#色"で代替して矩形の塗りつぶしが可能。
例)

lsph /
page top / list / main

Ver.2.80【実行節のみ】
えるえすぴーつー、ろーどすぷらいとつー
lsp2

拡張スプライト

lsp2 NUM,STR,NUM,NUM,NUM,NUM,NUM[,NUM]

数値拡張スプライト番号
文字列画像ファイル名
数値中心X座標
数値中心Y座標
数値X拡大率
数値Y拡大率
数値回転角
数値不透過度

拡張スプライトのロード命令です。拡張命令は、通常のスプライトと同様の移動やα値変更の他に、画像の中心を中心とした回転、拡大縮小、左右上下反転、そして加算ブレンディングが可能です。
lsp2は表示状態、通常のブレンディング
の状態でロードします。与えるパラメータは同じです。
lsp2 拡張スプライト番号,画像ファイル名,中心X座標,中心Y座標,X拡大率,Y拡大率,回転角(,初期α値、省略すると255)
なお、拡大率にマイナスの値を与えるとその方向に反転します。単位はパーセントです。回転角は反時計回りで単位は度です。

lsp2命令は現在アニメーションに対応しておりません
例)
画像"test.bmp"をコピーで左上座標320,240に縦2倍で36度回転させて表示状態で読み込む。
lsp2 0,":c;test.bmp",320,240,100,200,36

amsp2 / csp2 / lsp2add / lsph2 / lsph2add / msp2 / vsp2 /
page top / list / main

Ver.2.80【実行節のみ】
えるえすぴーつーあっど、ろーどすぷらいとつーあど
lsp2add

拡張スプライト

lsp2add NUM,STR,NUM,NUM,NUM,NUM,NUM[,NUM]

数値拡張スプライト番号
文字列画像ファイル名
数値中心X座標
数値中心Y座標
数値X拡大率
数値Y拡大率
数値回転角
数値不透過度

拡張スプライトのロード命令です。拡張命令は、通常のスプライトと同様の移動やα値変更の他に、画像の中心を中心とした回転、拡大縮小、左右上下反転、そして加算ブレンディングが可能です。
lsp2addは表示状態、加算ブレンディング
の状態でロードします。与えるパラメータは同じです。
lsp2add 拡張スプライト番号,画像ファイル名,中心X座標,中心Y座標,X拡大率,Y拡大率,回転角(,初期α値、省略すると255)
なお、拡大率にマイナスの値を与えるとその方向に反転します。単位はパーセントです。回転角は反時計回りで単位は度です。

例)
画像"test.bmp"をコピーで左上座標320,240に縦2倍で36度回転させて表示状態の加算合成で読み込む。
lsp2add 0,":c;test.bmp",320,240,100,200,36

amsp2 / csp2 / lsp2 / lsph2 / lsph2add / msp2 / vsp2 /
page top / list / main

Ver.2.93【実行節のみ】
えるえすぴーつーさぶ、ろーどすぷらいとつーさぶとらくと
lsp2sub

拡張スプライト

lsp2sub NUM,STR,NUM,NUM,NUM,NUM,NUM[,NUM]

数値拡張スプライト番号
文字列画像ファイル名
数値中心X座標
数値中心Y座標
数値X拡大率
数値Y拡大率
数値回転角
数値不透過度

拡張スプライトのロード命令です。拡張命令は、通常のスプライトと同様の移動やα値変更の他に、画像の中心を中心とした回転、拡大縮小、左右上下反転、そして減算ブレンディングが可能です。
lsp2subは表示状態、減算ブレンディング
の状態でロードします。与えるパラメータは同じです。
lsp2sub 拡張スプライト番号,画像ファイル名,中心X座標,中心Y座標,X拡大率,Y拡大率,回転角(,初期α値、省略すると255)
なお、拡大率にマイナスの値を与えるとその方向に反転します。単位はパーセントです。回転角は反時計回りで単位は度です。

例)
画像"test.bmp"をコピーで左上座標320,240に縦2倍で36度回転させて表示状態の減算合成で読み込む。
lsp2sub 0,":c;test.bmp",320,240,100,200,36

amsp2 / csp2 / lsp2 / lsp2add / lsph2 / lsph2add / lsph2sub / msp2 / vsp2 /
page top / list / main

Ver.2.48【実行節のみ】
えるえすぴーえいち、ろーどすぷらいとひどぅん
lsph

画像表示

lsph NUM,STR,NUM,NUM[,NUM]

数値スプライト番号(0~255)
文字列画像ファイル又はスプライト文字列
数値左上X座標
数値左上Y座標
数値不透過度(0~255)

スプライトを表示します。スプライトは0から49までです。
数字は順に左上のX,Y座標、文字列で画像ファイルを指定してください。
lspとlsphの違いは、最初のスプライトの状態です。
最後の数字は、スプライトの透過度です。これは省略できます。
lspは表示モード、lsphは非表示モードです。

スプライト番号は、実際には0~999まで使えるようです。(by senzogawa)
例)

lsp /
page top / list / main

Ver.2.80【実行節のみ】
えるえすぴーえいちつー、ろーどすぷらいとひどぅんつー
lsph2

拡張スプライト

lsph2 NUM,STR,NUM,NUM,NUM,NUM,NUM[,NUM]

数値拡張スプライト番号
文字列画像ファイル名
数値中心X座標
数値中心Y座標
数値X拡大率
数値Y拡大率
数値回転角
数値不透過度

拡張スプライトのロード命令です。拡張命令は、通常のスプライトと同様の移動やα値変更の他に、画像の中心を中心とした回転、拡大縮小、左右上下反転、そして加算ブレンディングが可能です。
lsph2は非表示状態、通常のブレンディング
の状態でロードします。与えるパラメータは同じです。
lsp2 拡張スプライト番号,画像ファイル名,中心X座標,中心Y座標,X拡大率,Y拡大率,回転角(,初期α値、省略すると255)
なお、拡大率にマイナスの値を与えるとその方向に反転します。単位はパーセントです。回転角は反時計回りで単位は度です。

例)
画像"test.bmp"をコピーで左上座標320,240に縦2倍で36度回転させて表示状態で読み込む。
lsph2 0,":c;test.bmp",320,240,100,200,36

amsp2 / csp2 / lsp2 / lsp2add / lsph2add / msp2 / vsp2 /
page top / list / main

Ver.2.80【実行節のみ】
えるえすぴーえいちつーあっど、ろーどすぷらいとひどぅんつーあど
lsph2add

拡張スプライト

lsph2add NUM,STR,NUM,NUM,NUM,NUM,NUM[,NUM]

数値拡張スプライト番号
文字列画像ファイル名
数値中心X座標
数値中心Y座標
数値X拡大率
数値Y拡大率
数値回転角
数値不透過度

拡張スプライトのロード命令です。拡張命令は、通常のスプライトと同様の移動やα値変更の他に、画像の中心を中心とした回転、拡大縮小、左右上下反転、そして加算ブレンディングが可能です。
lsph2addは非表示状態、加算ブレンディング
の状態でロードします。与えるパラメータは同じです。
lsp2 拡張スプライト番号,画像ファイル名,中心X座標,中心Y座標,X拡大率,Y拡大率,回転角(,初期α値、省略すると255)
なお、拡大率にマイナスの値を与えるとその方向に反転します。単位はパーセントです。回転角は反時計回りで単位は度です。

例)
画像"test.bmp"をコピーで左上座標320,240に縦2倍で36度回転させて表示状態の加算合成で読み込む。
lsph2add 0,":c;test.bmp",320,240,100,200,36

amsp2 / csp2 / lsp2 / lsp2add / lsph2 / msp2 / vsp2 /
page top / list / main

Ver.非公式【実行節のみ】
えるえすぴーつーさぶ、ろーどすぷらいとつーさぶとらくと
lsph2sub

拡張スプライト

lsph2sub NUM,STR,NUM,NUM,NUM,NUM,NUM[,NUM]

数値拡張スプライト番号
文字列画像ファイル名
数値中心X座標
数値中心Y座標
数値X拡大率
数値Y拡大率
数値回転角
数値不透過度

拡張スプライトのロード命令です。拡張命令は、通常のスプライトと同様の移動やα値変更の他に、画像の中心を中心とした回転、拡大縮小、左右上下反転、そして減算ブレンディングが可能です。
lsp2subは表示状態、減算ブレンディング
の状態でロードします。与えるパラメータは同じです。
lsp2sub 拡張スプライト番号,画像ファイル名,中心X座標,中心Y座標,X拡大率,Y拡大率,回転角(,初期α値、省略すると255)
なお、拡大率にマイナスの値を与えるとその方向に反転します。単位はパーセントです。回転角は反時計回りで単位は度です。

例)
画像"test.bmp"をコピーで左上座標320,240に縦2倍で36度回転させて表示状態の減算合成で読み込む。
lsph2sub 0,":c;test.bmp",320,240,100,200,36

amsp2 / csp2 / lsp2 / lsp2add / lsp2sub / lsph2 / lsph2add / msp2 / vsp2 /
page top / list / main

Ver.2.93【定義節のみ】
るあこーる
luacall

システムカスタマイズ関連

luacall NAME

名前機能名(tag,text0,text,animation,close,end,savepoint,save,load)

NScripterのデフォルト動作のほとんどを、Lua関数で横取りすることができます。
表示文をスプライト機能で置き換えたり、システムカスタマイズなどをLuaで行えるようになります。
指定文字列は""で囲む必要はありません。また、大文字小文字も区別されません。
Lua側の関数名は、NSCALL_(指定文字列)となります。
Lua関数の引数や文字列は、それぞれの機能ごとに形式が定められています。

例)
テキスト表示時、Lua関数NSCALL_textを呼び出すよう設定する。
luacall text

luasub /
page top / list / main

Ver.2.93【定義節のみ】
るあさぶ
luasub

システムカスタマイズ関連

luasub NAME

名前任意の命令名

define節命令です。
命令名を受け取り、それをLua側のNSCOM_(命令名)という関数に結び付けます。
この命令を実行すると、以後シナリオスクリプト(00.txt~)でfunc命令を実行したときに、
Lua関数 NSCOM_func() が呼び出されます。
luasubで登録されるLua関数には引数も戻り値もありません。
引数や戻り値はそれぞれ下で説明している関数を使って利用してください。

なお、既存の命令も上書きできます。
たとえばluasub bgとすると、もともとのbg命令ではなくluaのNSCOM_bg関数が優先されます。
もともとのbg命令を呼びたい場合は、defsubのときと同様_bgとしてください。
例)
Lua関数NSCOM_funcを呼び出すfunc命令を定義する。
luasub func

luacall /
page top / list / main

Ver.2.49【定義節のみ】
まっくすかいそうぺーじ
maxkaisoupage

回想モード

maxkaisoupage NUM

数値回想モードの最大ページ数

*define節命令です。回想モードの最大ページ数を設定します。

例)
回想モードの最大ページ数を10ページとする
maxkaisoupage 10

/
page top / list / main

Ver.2.48【実行節のみ】
めにゅーくりっくでふ、めにゅーくりっくでふぉると
menu_click_def

ウィンドウメニュー関連

menu_click_def

デフォルトの文字表示モードにします。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
めにゅーくりっくぺーじ
menu_click_page

ウィンドウメニュー関連

menu_click_page

一ページごとに表示するモードにします。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
めにゅーでぃーわぶぼる、めにゅーでぃーうぇいぶぼりゅーむ
menu_dwavvol

追加機能

menu_dwavvol

ボリューム変更ダイアログを表示します。

例)
ボリューム変更ダイアログを表示する
menu_dwavvol

bgmvol / mp3vol / sevol / voicevol /
page top / list / main

Ver.2.48【実行節のみ】
めにゅーふる
menu_full

ウィンドウメニュー関連

menu_full

フル画面モードにします。

例)
フルスクリーンかどうかを%0に取得し、判定結果と逆の状態にする。
isfull %0
if %0==0 menu_full
notif %0==0 menu_window

isfull / menu_window /
page top / list / main

Ver.2.48【実行節のみ】
めにゅーうぃんどう
menu_window

ウィンドウメニュー関連

menu_window

ウィンドウ画面モードにします。

例)
フルスクリーンかどうかを%0に取得し、判定結果と逆の状態にする。
isfull %0
if %0==0 menu_full
notif %0==0 menu_window

isfull / menu_full /
page top / list / main

Ver.2.48【定義節のみ】
めにゅーせれくとからー
menuselectcolor

右クリック機能設定

menuselectcolor COLOR,COLOR,COLOR

色値項目にマウスカーソルが重なっている時の色
色値項目にマウスカーソルが重なっていない時の色
色値セーブファイルが無い時の色

Rクリックでメニューが出るモードにしたときの、メニューの色を指定します。
順に、マウスが上にいるとき、いないとき、セーブファイルがないとき、の色です。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
めにゅーせれくとぼいす
menuselectvoice

右クリック機能設定

menuselectvoice STR,STR,STR,STR,STR,STR,STR

文字列メニューが開く時の音
文字列メニューがキャンセルされた時の音
文字列メニュー選択肢の上にカーソルが重なった時の音
文字列メニュー選択肢がクリックされた時の音
文字列できない操作をされた時の音
文字列「はい」が選ばれた時の音
文字列「いいえ」が選ばれた時の音

メニュー選択肢の音、その他システム音WAVEファイルの指定です。
順に、メニューが開くとき、メニューをキャンセルしたとき、メニュー選択肢のどれかの上に動いたとき、どれかをクリックしたとき、できない操作をしたときの警告、「はい」を選んだとき、「いいえ」をえらんだとき、です。

なお、WAVEファイルに""を指定すると、何も鳴らさなくなります。
デフォルトは、すべて""です。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
めにゅーせっとうぃんどう
menusetwindow

右クリック機能設定

menusetwindow NUM,NUM,NUM,NUM,NUM,NUM,COLOR

数値文字幅
数値文字高さ
数値文字間隔X
数値文字間隔Y
数値太字フラグ(0:普通、1:太字)
数値影付けフラグ(0:付けない、1:付ける)
色値ウィンドウの色

メニュー用のウィンドウ設定です。
メニューウィンドウは、必ず全画面で、明度を落とすタイプです。
左から順に、文字フォントサイズX、文字フォントサイズY、字間X、字間Y、太字フラグ(1(太字)か0(普通))、影付けフラグ(1(つける)か0(つけない))最後のパラメータは、ウィンドウの色です。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
めすぼっくす、めっせーじぼっくす
mesbox

追加機能

mesbox STR,STR

文字列表示するメッセージ
文字列タイトル

メッセージボックスを表示します。
最初が内容、次がウィンドウタイトルです。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
みっど、みどる
mid

計算式・変数

mid $VAR,STR,NUM,NUM

文字変数部分文字列の格納先
文字列部分文字列を取得する文字列
数値部分文字列の先頭のインデックス
数値取得する文字数

文字列から部分文字列を取得します。

最初の文字を0文字目と数えてください。
例)
文字列$1の%0文字目から%1文字分の部分文字列を$0に切り出す
mid $0,$1,%0,%1
例)
$1の先頭から5文字を$0に格納する
mid $0,$1,0,5

len /
page top / list / main

Ver.2.48【実行節のみ】
みにまいずうぃんどう
minimizewindow

追加機能

minimizewindow

ウィンドウを最小化します。

例)
ウィンドウを最小化します。
minimizewindow

/
page top / list / main

Ver.2.48【定義節・実行節両用】
もっど、もじゅろ
mod

計算式・変数

mod

数字変数数値の演算先
数値演算する数値

その変数を、数字で割った余りを出します。

式で使う場合は以下のように半角スペースを空けて書きます。
mov %0,%1 mod 2
例)

/
page top / list / main

Ver.2.48【定義節のみ】
もーどいーえっくす、もーどえくすとら
mode_ext

特殊モード設定

mode_ext

商用ソフト「銀色」のために作った命令です。
この命令を実行すると、メニューに「オートモード」がつきます。
オートモードは「次の選択肢まで進む」に似ていますが、ウェーブが
なりおわるまで先には進まず、ウェーブがないところでも、下のautomode_time命令で
どのくらいクリックまでに待つか指定することが出来ます。
いわゆる読み上げモードですね。

メニューからボリューム変更ダイアログが
使えるようになる。(MP3(BGM) voice(DWAVE 0) SE(DWAVE 1~)のボリュームを
いじれるようになりました。)
この辺の拡張機能の追加についてはもうちょっとすっきりした命令を作る予定
(今有効な命令は将来的にもちゃんと使えます。)

例)

/
page top / list / main

Ver.2.48【定義節のみ】
もーどさや
mode_saya

特殊モード設定

mode_saya

同ソ「莢~背徳の迷宮~」のために作った命令です。この命令を実行すると、動作が莢モードになります。莢モードでは、・文字ウィンドウが消えているとき、表示状態に関わらず、 スプライト0~9が非表示になります。 ・文字ウィンドウが消えているとき、以下で説明するバーや数字表示が非表示になります。 この二つは、例えば「パラメータウィンドウ」みたいのを、テキストウィンドウを消すのと同時に消したいときに使えます。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
もーどうぇいぶでも
mode_wave_demo

既読スキップ

mode_wave_demo

普通、次の選択肢を飛ばすモードのときはWAVEはならないのですが、 mode_wave_demoを実行していると、なります。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
もーどさんびゃくにじゅう
mode320

特殊モード設定

mode320

画面サイズを320×240にします。
この命令だけは特殊な書式で、0.txtの一番最初の行(*defineより前)のコメント行の中に書きます。

この命令にてウィンドウサイズを変更しても、テキストウィンドウは640x480の時のままです。
setwindow命令にて任意の大きさに合わせる必要があります。
例)
画面サイズを320x240にする。
;mode320
*define

mode400 / mode800 / value /
page top / list / main

Ver.2.48【定義節のみ】
もーどよんひゃく
mode400

特殊モード設定

mode400

画面サイズを400×300にします。
この命令だけは特殊な書式で、0.txtの一番最初の行(*defineより前)のコメント行の中に書きます。

この命令にてウィンドウサイズを変更しても、テキストウィンドウは640x480の時のままです。
setwindow命令にて任意の大きさに合わせる必要があります。
例)
画面サイズを400x300にする。
;mode400
*define

mode320 / mode800 / value /
page top / list / main

Ver.2.48【定義節のみ】
もーどはっぴゃく
mode800

特殊モード設定

mode800

画面サイズを800×600にします。
この命令だけは特殊な書式で、0.txtの一番最初の行(*defineより前)のコメント行の中に書きます。
他に400,320を指定できます。

この命令にてウィンドウサイズを変更しても、テキストウィンドウは640x480の時のままです。
setwindow命令にて任意の大きさに合わせる必要があります。
例)
画面サイズを800x600にする。
;mode800
*define

mode320 / mode400 / value /
page top / list / main

Ver.2.48【実行節のみ】
ものくろ
monocro

画像エフェクト

monocro COLOR

色値基調色

monocro off

列挙状態の解除指定用

その色を基調としたモノクロ画面モードになります。
ただし、テキストウィンドウやカーソルはその影響を受けません。
monocro offで、モノクロ状態を抜けます。

例)
例)

/
page top / list / main

Ver.2.96【実行節のみ】
もざいくいん
mosaicin

画像エフェクト

mosaicin NUM,NUM,NUM

数値モザイク最大サイズ
数値分割数
数値時間(ミリ秒)

トランジションエフェクトにも存在するモザイク処理の、より指定が細かくて、ワイドスクリーン時のバグを修正したバージョンです。
トランジションエフェクトというよりも個別の命令なので、分離して実装しました。
実行した後にVRAMが不定状態になるのは既存のものと同じなので、何か他の画面への遷移が必要です。

残念なことにeffectcutが効かないようです。(by senzogawa)
例)
モザイク最大サイズを80、分割数を128、時間を1秒のモザイクエフェクトを表示する
mosaicin 80,128,1000

effectcut / mosaicout /
page top / list / main

Ver.2.96【実行節のみ】
もざいくあうと
mosaicout

画像エフェクト

mosaicout NUM,NUM,NUM

数値モザイク最大サイズ
数値分割数
数値時間(ミリ秒)

トランジションエフェクトにも存在するモザイク処理の、より指定が細かくて、ワイドスクリーン時のバグを修正したバージョンです。
トランジションエフェクトというよりも個別の命令なので、分離して実装しました。
実行した後にVRAMが不定状態になるのは既存のものと同じなので、何か他の画面への遷移が必要です。

残念なことにeffectcutが効かないようです。(by senzogawa)
例)
モザイク最大サイズを80、分割数を128、時間を1秒のモザイクエフェクトを表示する
mosaicout 80,128,1000

effectcut / mosaicin /
page top / list / main

Ver.2.48【定義節・実行節両用】
まうすかーそる
mousecursor

カーソル

mousecursor STR

文字列マウスカーソルファイル

Windowsカーソルファイル(*.cur)を読み込み、それをマウスカーソルにします。

ver.2.93にて非推奨を解除
例)

/
page top / list / main

Ver.2.93【実行節のみ】
まうすもーど
mousemode

カーソル

mousemode NUM

文字列マウスカーソル表示フラグ(0:非表示、1:表示)

mousemode 0 でマウスカーソルを消し、mousemode 1 でマウスカーソルをつけられるようになりました。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
もぶ、むーぶ
mov

計算式・変数

mov %VAR,NUM

数字変数数値の代入先
数値代入する数値

mov $VAR,STR

文字変数文字列の代入先
文字列代入する文字列

変数に値を代入します。

定義節でローカル変数に代入した値は実行節では初期化されているため、利用できません。
実行節で使いたい変数には実行節で代入するか、グローバル変数を利用する必要があります。 by senzogawa
例)
数字変数3に24を代入する。
mov %3,24
例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
もぶてん、むーぶてん
mov10

計算式・変数

mov10 %VAR,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM

数字変数数値の代入先
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値

最初に指定した数字変数から順に数字を代入します。
単純に、10つの値をテーブルに代入する作業が楽になる命令です。

文字変数には使えません。(by senzogawa)
例)
%3に2、%4に4、%5に6を代入する。
mov10 %3,2,4,6,8,10,12,14,16,18,20
;これは、
;mov %3,2
;mov %4.4
;mov %5,6
;mov %6,8
;mov %7,10
;mov %8.12
;mov %9,14
;mov %10.16
;mov %11,18
;mov %12,20
;と等価です。

mov / mov3 / mov4 / mov5 / mov6 / mov7 / mov8 / mov9 /
page top / list / main

Ver.2.48【定義節・実行節両用】
もぶすりー、むーぶすりー
mov3

計算式・変数

mov3 %VAR,NUM,NUM,NUM

数字変数数値の代入先
数値代入する数値
数値代入する数値
数値代入する数値

最初に指定した数字変数から順に数字を代入します。
単純に、3つの値をテーブルに代入する作業が楽になる命令です。

同様の命令に、"mov4" "mov5" "mov6" "mov7" "mov8" "mov9" "mov10" があります。
それぞれ、4、5、6、7、8、9、10個の代入を楽にしてくれます。

文字変数には使えません。(by senzogawa)
例)
%3に2、%4に4、%5に6を代入する。
mov3 %3,2,4,6
;これは、
;mov %3,2
;mov %4.4
;mov %5,6
;と等価です。

mov / mov10 / mov4 / mov5 / mov6 / mov7 / mov8 / mov9 /
page top / list / main

Ver.2.48【定義節・実行節両用】
もぶふぉー、むーぶふぉー
mov4

計算式・変数

mov4 %VAR,NUM,NUM,NUM,NUM

数字変数数値の代入先
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値

最初に指定した数字変数から順に数字を代入します。
単純に、4つの値をテーブルに代入する作業が楽になる命令です。

文字変数には使えません。(by senzogawa)
例)
%3に2、%4に4、%5に6を代入する。
mov4 %3,2,4,6,8
;これは、
;mov %3,2
;mov %4.4
;mov %5,6
;mov %6,8
;と等価です。

mov / mov10 / mov3 / mov5 / mov6 / mov7 / mov8 / mov9 /
page top / list / main

Ver.2.48【定義節・実行節両用】
もぶふぁいぶ、むーぶふぁいぶ
mov5

計算式・変数

mov5 %VAR,NUM,NUM,NUM,NUM,NUM

数字変数数値の代入先
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値

最初に指定した数字変数から順に数字を代入します。
単純に、5つの値をテーブルに代入する作業が楽になる命令です。

文字変数には使えません。(by senzogawa)
例)
%3に2、%4に4、%5に6を代入する。
mov5 %3,2,4,6,8,10
;これは、
;mov %3,2
;mov %4.4
;mov %5,6
;mov %6,8
;mov %7,10
;と等価です。

mov / mov10 / mov3 / mov4 / mov6 / mov7 / mov8 / mov9 /
page top / list / main

Ver.2.48【定義節・実行節両用】
もぶしっくす、むーぶしっくす
mov6

計算式・変数

mov6 %VAR,NUM,NUM,NUM,NUM,NUM,NUM

数字変数数値の代入先
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値

最初に指定した数字変数から順に数字を代入します。
単純に、6つの値をテーブルに代入する作業が楽になる命令です。

文字変数には使えません。(by senzogawa)
例)
%3に2、%4に4、%5に6を代入する。
mov6 %3,2,4,6,8,10,12
;これは、
;mov %3,2
;mov %4.4
;mov %5,6
;mov %6,8
;mov %7,10
;mov %8.12
;と等価です。

mov / mov10 / mov3 / mov4 / mov5 / mov7 / mov8 / mov9 /
page top / list / main

Ver.2.48【定義節・実行節両用】
もぶせぶん、むーぶせぶん
mov7

計算式・変数

mov7 %VAR,NUM,NUM,NUM,NUM,NUM,NUM,NUM

数字変数数値の代入先
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値

最初に指定した数字変数から順に数字を代入します。
単純に、7つの値をテーブルに代入する作業が楽になる命令です。

文字変数には使えません。(by senzogawa)
例)
%3に2、%4に4、%5に6を代入する。
mov7 %3,2,4,6,8,10,12,14
;これは、
;mov %3,2
;mov %4.4
;mov %5,6
;mov %6,8
;mov %7,10
;mov %8.12
;mov %9,14
;と等価です。

mov / mov10 / mov3 / mov4 / mov5 / mov6 / mov8 / mov9 /
page top / list / main

Ver.2.48【定義節・実行節両用】
もぶえいと、むーぶえいと
mov8

計算式・変数

mov8 %VAR,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM

数字変数数値の代入先
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値

最初に指定した数字変数から順に数字を代入します。
単純に、8つの値をテーブルに代入する作業が楽になる命令です。

文字変数には使えません。(by senzogawa)
例)
%3に2、%4に4、%5に6を代入する。
mov8 %3,2,4,6,8,10,12,14,16
;これは、
;mov %3,2
;mov %4.4
;mov %5,6
;mov %6,8
;mov %7,10
;mov %8.12
;mov %9,14
;mov %10.16
;と等価です。

mov / mov10 / mov3 / mov4 / mov5 / mov6 / mov7 / mov9 /
page top / list / main

Ver.2.48【定義節・実行節両用】
もぶないん、むーぶないん
mov9

計算式・変数

mov9 %VAR,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM

数字変数数値の代入先
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値
数値代入する数値

最初に指定した数字変数から順に数字を代入します。
単純に、9つの値をテーブルに代入する作業が楽になる命令です。

文字変数には使えません。(by senzogawa)
例)
%3に2、%4に4、%5に6を代入する。
mov9 %3,2,4,6,8,10,12,14,16,18
;これは、
;mov %3,2
;mov %4.4
;mov %5,6
;mov %6,8
;mov %7,10
;mov %8.12
;mov %9,14
;mov %10.16
;mov %11,18
;と等価です。

mov / mov10 / mov3 / mov4 / mov5 / mov6 / mov7 / mov8 /
page top / list / main

Ver.2.48【実行節のみ】
むーぶまうすかーそる
movemousecursor

カーソル

movemousecursor NUM,NUM

数値移動先のX座標
数値移動先のY座標

マウスを画面上の任意の位置に移動させる。

例)
マウスを画面上の座標(100,10)に移動させる。
movemousecursor 100,10

/
page top / list / main

Ver.2.49【実行節のみ】
むーびー
movie

動画再生

movie 'stop'|STR[,'pos',NUM,NUM,NUM,NUM][,'click'][,'loop'][,'async']

文字列ファイル名
数値動画左上のX座標
数値動画左上のY座標
数値動画表示横幅
数値動画表示高さ

mpegplayに変わる次期主力となる予定のムービー再生命令です。
以下を組み合わせることが出来ます。
movie "ファイル名" ;単に終わるまで再生する。クリックでスキップできない。
movie "ファイル名",pos,10,20,320,240 ;左上の座標10,20 大きさ320x240で再生
movie "ファイル名",click ;クリックで、その場で停止して再生終了(async時無効)
movie "ファイル名",loop ;ループ再生します(asyncもしくはclickを指定しないと止める方法がないということになるので注意)
movie "ファイル名",async ;非同期再生します。この命令は再生を始めた時点で処理をNScripterに戻し、通常通りのスクリプト動作を続けたまま、ムービーが再生されます。ムービーは常に最前列として扱われます。字よりも上なので注意。
movie stop ;asyncで非同期再生をしているムービーを止めます

再生終了時の画像がそのまま画面に残ります。
また、そこは無効領域として扱われますので、print命令を使うことで、そこから元の画像へエフェクトをかけて変化することが出来ます。
例)
ファイル"test.mpg"を座標10,20、サイズ320x240で、非同期でループ再生する。 30秒後に止める。
movie "test.mpg",pos,10,20,320,240,async,loop
wait 30*1000
movie stop
例)
"test.mpg"をクリックスキップ可能で再生する。 再生停止後、クロスフェードで再描画する。
movie "test.mpg",click
print 10,1000

mpegplay /
page top / list / main

Ver.2.48【定義節・実行節両用】
もぶえる、むーぶらいん
movl

計算式・変数

movl ARRAY,NUM[,NUM[,...]]

配列行代入先の配列の行
数値代入する数値

配列の行に対して一度に値を代入します。

例)
5つの要素を持つ配列変数10に、0,1,2,3,4を代入する。
dim ?10[4]
movl ?10,0,1,2,3,4
例)
3*4の要素を持つ2次元配列変数20の最初に0,1,2,3,4、次に0,2,4,6、最後に0,3,6,9を代入する。
dim ?20[2][3]
movl ?20[0],0,1,2,3
movl ?20[1],0,2,4,6
movl ?20[2],0,3,6,9

/
page top / list / main

Ver.2.48【実行節のみ】
えむぴーすりー
mp3

音楽・SE演奏

mp3 STR

文字列MP3ファイル名

mp3dec.dllがある場合、それを利用してMP3ファイルを演奏します。
mp3は一回だけです。
waveと同時に使っても大丈夫のようです。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
えむぴーすりーふぇいどいん
mp3fadein

音楽・SE演奏

mp3fadein NUM

数値フェードインする時間(ミリ秒)

bgmfadeoutと同じ要領で、フェードインの設定をします。

例)

bgmfadeout /
page top / list / main

Ver.2.48【定義節・実行節両用】
えむぴーすりーふぇいどあうと
mp3fadeout

音楽・SE演奏

mp3fadeout NUM

数値フェードアウトする時間(ミリ秒)

BGMのフェードアウトの時間を指定
define節でも実行節でも使えます。

例)

bgmfadein /
page top / list / main

Ver.2.48【実行節のみ】
えむぴーすりーるーぷ
mp3loop

音楽・SE演奏

mp3loop STR

文字列MP3ファイル名

mp3dec.dllがある場合、それを利用してMP3ファイルを演奏します。
mp3loopは、音をループさせます。
waveと同時に使っても大丈夫のようです。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
えむぴーすりーせーぶ
mp3save

音楽・SE演奏

mp3save

mp3と同様一回だけの再生ですが、再生中にセーブするとロード後も再生されます。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
えむぴーすりーすとっぷ
mp3stop

音楽・SE演奏

mp3stop

圧縮された音楽ファイルの演奏を停止します。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
えむぴーすりーぼる、えむぴーすりーぼりゅーむ
mp3vol

音楽・SE演奏

mp3vol NUM

数値ボリューム(0~100)

bgmのボリュームを変えます。bgm命令とmp3命令で有効です。

セーブはされませんので、手動で管理してください。
play命令には影響しません(by senzogawa)
nsogg.dll,nsogg2.dll使用時はセーブされるようになった模様。
例)
bgmの音量を100にします(0-100)
mp3vol 100

bgmvol / chvol / sevol / voicevol /
page top / list / main

Ver.2.48【実行節のみ】
えむぺぐぷれい
mpegplay

動画再生

mpegplay STR,NUM

文字列ファイル名
数値中断可否フラグ(0:最後まで再生、1:クリックで中断)

ファイル名に指定したファイルをDirectShowの機能で再生します。
クリックフラグが0だとクリックしても再生をやめませんが、
クリックフラグが1の場合は、画面クリックで再生を中止します。
この命令を使うには、DirectX8.0a以上が必要です。
(古いDirectXでも使えるかもしれませんが、サポート対象にはしません)

例)
"test.mpeg"を中断可能で再生する。
mpegplay "test.mpeg",1

/
page top / list / main

Ver.2.48【実行節のみ】
えむえすぴー、むーぶすぷらいと
msp

画像表示

msp NUM,NUM,NUM[,NUM]

数値スプライト番号(0~255)
数値X方向の増分
数値Y方向の増分
数値不透過度の増分

そのスプライトを移動させます。順に、X,Y,透過度に加算する値、です。

なお、tal命令と、スプライト系命令は、すべて、画像を内部的に書きかえるだけで、画面に反映させません。(一括処理で高速化するためです。)
他の画像命令を使ったり、文字を表示する前に、必ずprint命令で実際に表示してください。

例)

amsp /
page top / list / main

Ver.2.80【実行節のみ】
えむえすぴーつー、むーぶすぷらいとつー
msp2

拡張スプライト

msp2 NUM,NUM,NUM,NUM,NUM,NUM[,NUM]

数値拡張スプライト番号
数値中心X増分
数値中心Y増分
数値X拡大率増分
数値Y拡大率増分
数値回転角増分
数値不透過度増分

拡張スプライトの移動命令です。msp2は現在値からの相対指定、amsp2は値そのものの指定です。

例)
拡張スプライト0番を右に10、下に20移動し、拡大率を横に-10%、縦に+10%して、5度増やす。
msp2 0,10,20,-10,10,5

amsp2 / csp2 / lsp2 / lsp2add / lsph2 / lsph2add / vsp2 /
page top / list / main

Ver.2.48【定義節・実行節両用】
むる、まるちぷらい
mul

計算式・変数

mul %VAR,NUM

数字変数数値の演算先
数値演算する数値

その変数に、数字を掛けます。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
えむぶい、えむぴーすりーぼいす
mv

音楽・SE演奏

mvNUM:

数値音声ファイル番号

voice\指定された数字.mp3をファイル名として音声を再生します。

例)
voice\00001.mp3を再生します。
mv00001:

/
page top / list / main

Ver.2.48【実行節のみ】
ねが
nega

画像エフェクト

nega NUM

数値表示フラグ(0:反転解除、1:monocro優先、2:nega優先)

1と2で、ネガポジ反転します。
1と2の違いは、monocroとの優先度です。やってみればわかると思います。
数字0でネガポジ反転をやめます。
nega命令とmonocro命令は、それだけでは画面を変更しません。
直後にprint命令で、実際の画面変更を行ってください。

例)

/
page top / list / main

条件式・ループ書式

next

forブロックの終端を示します。詳細はforの説明を参照してください。

例)

for /
page top / list / main

Ver.2.80【実行節のみ】
ねくすとせる
nextcsel

システムカスタマイズ関連

nextcsel %VAR

数字変数結果を受け取る変数(0:次の行は非csel,1:csel)

次の命令がcselである場合、1を返します。文字を消さずに選択肢を出したい時に使えます。

例)

*customsel / csel /
page top / list / main

Ver.非公式【定義節のみ】
のーろーどえらー
noloaderror

追加機能

noloaderror

bgやbgm命令でファイルが無い場合にもエラーで強制終了せず、単に命令を無視します。

例)

bg / bgm / ld /
page top / list / main

Ver.2.48【定義節のみ】
のっといれいすまん
noteraseman

テキストウィンドウ

noteraseman

ウィンドウ消去時、人を消さなくなります。

例)
ウィンドウ消去時、人を消さないようにする
noteraseman

textoff /
page top / list / main

Ver.2.48【定義節・実行節両用】
のっといふ
notif

条件式・ループ書式

notif CONDITION[{&&,&} CONDITION[...]] SENTENCE

条件式比較演算子、チェック命令を用いた、真偽を返す式
実行文条件式が真の時に実行される文

条件判断文です。次の形式で使います。
 notif 条件式 ({&&,&} 条件式) 実行文
ifは、条件が成立した場合、notifはしなかった場合、残りの文を実行します。
成立しなかった場合、その行は読み飛ばされます。
&&も&も同じ意味で、条件をさらに絞り込むのに使います。
条件式には数字、もしくはfchk関数が使えます。
   <条件式>
   数字 {>,<,=,>=,<=,==,!=,<>} 数字
   もしくは、
   fchk 文字列

例)
%0の内容が1ではなかったら、2ピクセル500ミリ秒間横に揺らす。
notif %0=1 quakex 2,500

/
page top / list / main

Ver.2.48【定義節のみ】
えぬえすえい
nsa

プラグイン・アーカイブ

nsa

NSAアーカイブモードにします。
同梱のnsaarc.exeで圧縮すると作られるarc.nsa内のファイルを読みこめるようになります。DLLなどはいりません。
nsaファイルはNScripterと同じフォルダにおいてください。

BMPにはアーカイブ化のときに圧縮がかかります。生BMPを直接渡してください。

NScripterは、NSA内のBMPを扱うときにもっとも高いパフォーマンスを発揮します。NSA内のBMP形式では、画像ファイルなどを扱うとき、一切の中間ファイルを作りません。

圧縮するのに時間がかかるような巨大なアーカイブは分割管理すると便利です。 arc.nsa arc1.nsa arc2.nsa~arc9.nsaの10個のアーカイブファイルを扱うことが出来ます。
この場合、上に書いた順番で検索していきます。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
えぬえすえいでぃる、えぬえすえいでぃれくとり
nsadir

プラグイン・アーカイブ

nsadir STR

文字列nsaファイルを読みに行くディレクトリ名

nsaファイルを読みに行くディレクトリを指定します。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
なむえいりあす、なんばーえいりあす
numalias

計算式・変数

numalias NAME,NUM

名前数値を表す名前
数値別名で表す数値

数字エイリアスを作ります。以降、数字の代わりに、そのエイリアスで指定できるようになります。

なお、エイリアスの値に変数を代入しても、そのときの値を保持するだけで、あとで変数の値を変更したらいっしょに変わってくれるわけではありません。

エイリアスの名前は、C言語の変数の名前と同じ形式です。つまり、一文字目は英語もしくは_(半角アンダーバー)、二文字目以降は、数字、英語、もしくは_です。ただし、大文字小文字は区別されません。

例)
ef_lshutterを、2に置換されるようにする。
numalias ef_lshutter,2
; 以後、ef_lshutterは、2に置換されます。
; たとえば、bg "test.bmp",ef_lshutterは、bg "test.bmp",2と同じ。
例)
(高度な使い方) 数字エイリアスで、変数に別名をつける。
numalias akari_love,0
; 以後、%akari_loveは、%0と同じ意味になります。
; たとえば、add %akari_love,10で%0に10を加算できます。

/
page top / list / main

Ver.2.48【実行節のみ】
おーえふえすしーぴーわい、おふすくりーんこぴー
ofscpy

画像表示

ofscpy

blt命令で描かれた画像をオフスクリーンバッファに転送する。
解説:
 bltの処理を終わってから何かエフェクトをかけたいとき、この命令でオフスクリーンバッファに
 今の状態をコピーしてから行います。
 この命令で作られたオフスクリーンバッファは、エフェクトのときには正しく動作しますが、
 セーブ・ロードでは記憶されません。あくまでつなぎのための命令です。
 blt命令にしろ、ofscpy命令にしろ、高速なデモ処理(AIRのような)をやるために
作られた特殊な命令なので、使い方が結構難しいですが、ご了承下さい。

例)
btndef "~"
;アニメ用の画像を読んでおく。

bg ~
ld c,~
;ここまでは普通の画面命令なので、普通に動く。

resettimer
blt ~
waittimer 100
blt ~
waittimer 100
;このへんで、高速な画像処理をしている。

;blt処理をしてから普通の画像命令を使いたいときは、その前にofscpy命令を使うこと。
ofscpy
bg ~

;あとは普通にやっていい。
bg ~
ld c,~

blt /
page top / list / main

Ver.2.48【定義節・実行節両用】
おーけーきゃんせるぼっくす
okcancelbox

追加機能

okcancelbox %VAR,STR,STR

数字変数1がOK、0がキャンセル
文字列表示するテキスト
文字列ダイアログのタイトル

WindowsのOK/キャンセルのダイアログボックスを出して、ユーザからの入力を変数に代入する。

例)
セーブの確認
okcancelbox %0,"セーブします。","セーブ確認"

yesnobox /
page top / list / main

Ver.2.48【実行節のみ】
ぷれい
play

音楽・SE演奏

play STR

文字列MIDIファイル名、又はCDトラック番号ラベル

MIDIファイルもしくはCDを演奏します。
ファイル名を指定すればそのMIDIファイルが、 "*数字"と指定すれば、その番号のCDトラックが演奏されます。
playは最後まで行くとまた最初から再生します。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
ぷれいわんす
playonce

音楽・SE演奏

playonce STR

文字列MIDIファイル名、又はCDトラック番号ラベル

MIDIファイルもしくはCDを演奏します。
ファイル名を指定すればそのMIDIファイルが、 "*数字"と指定すれば、その番号のCDトラックが演奏されます。
playonceは一回だけの再生です。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
ぷれいすとっぷ
playstop

音楽・SE演奏

playstop

CDもしくはMIDIを止めます。

例)

/
page top / list / main

Ver.2.49【定義節のみ】
ぷれてきすとごーさぶ
pretextgosub

文章タグ関連

pretextgosub LABEL

ラベルテキスト表示の直前に呼ばれるサブルーチンのラベル

テキスト表示の直前にこのフラグで示されるサブルーチンへジャンプします。
pretextgosub命令を使うと、表示文の直前に「タグ」を付けることが出来ます。
「タグ」は、「[」と「]」で囲まれた部分のことです。
例)
[太郎/0001.wav]テスト用の文章です。

例)
テキスト表示直前に*pretext_lbが呼ばれるように指定する
pretextgosub *pretext_lb
例)
pretextgosub関連命令の使用例
pretextgosub *pretext_lb

*pretext_lb
dwavestop 0
gettag $0,$1
if $0="" indent 0:goto *next_tag
mov $2,$0
add $2,"/"
puttext $2
;↑単純に名前だけputtextで表示したのでは最後に改行されてしまうので、
;末尾に/を付けて改行を抑制している
indent 3
;台詞なのでインデント指定
*next_tag
if $1="" return
dwave 0,$2
;ボイス再生
return

gettag / indent /
page top / list / main

Ver.2.48【実行節のみ】
ぷりんと
print

画像表示

print EFFECT

エフェクト表示のエフェクト

そのエフェクトで画面を書きなおします。

エフェクトの指定には、次の二種類の方法があります。
1)一ケタで指定
    0…何もしないで、メモリにだけ書きこむ
    1…瞬時表示
    その他…effect命令で定義済みのエフェクトを呼び出す。

2)直接指定
    effect命令に与えるパラメータと同じ物を指定。

例)
背景"test.jpg"と立ち絵"testman.jpg"を中央位置に同時に表示し、設定済みのエフェクト番号3によるエフェクトで立ち絵を消去する。
bg "test.jpg",0
ld c,"testman.jpg",1
cl c,3
例)
背景"test.jpg"を1秒間のクロスフェードで表示し、立ち絵"testman.jpg"を左位置に2秒間のマスクファイル"mask.bmp"によるフェードで表示する。
bg "test.jpg",10,1000
ld l,"testman.jpg",15,2000,"mask.bmp"

effect /
page top / list / main

Ver.2.48【実行節のみ】
ぴーあーるなむ、ぷりんとなんばー
prnum

文字・数字・バー表示

prnum NUM,NUM,NUM,NUM,NUM,NUM,COLOR

数値数値ラベル番号
数値現在値
数値表示位置左上X座標
数値表示位置左上Y座標
数値文字幅
数値文字高さ
色値文字色

数値ラベル表示設定をします。指定した位置・表示設定でその数字が表示されます。
値は3ケタ、つまり0~999を想定しています。
指定した後でprint命令などの表示処理を実行しないと、画面に反映されません。

barとprnumは「莢」のために追加された命令ですが、mode_sayaがなくても使えます。
今後、もうちょっと融通の利く命令が別に追加される可能性があります。

ver.2.93以降で非推奨。使用した場合の動作は環境に依存する模様。
例)

/
page top / list / main

Ver.2.48【実行節のみ】
ぴーあーるなむくりあ、ぷりんとなんばーくりあ
prnumclear

文字・数字・バー表示

prnumclear

数値ラベル設定をクリアします。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
ぷっとてきすと
puttext

テキスト表示

puttext STR

文字列表示する文字列

その文字列を表示します。if文のあとで、ちょっとした表示をやりたいときなどは使えるかもしれません。
puttextのときは、変数を表示する機能(特殊表示文字%と$)は使えません。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
くえいく
quake

画像エフェクト

quake NUM,NUM

数値振幅(ピクセル)
数値時間(ミリ秒)

前のQUAKEX QUAKEY命令はマシンに掛ける負担が大きかったので、 昔のノートのビデオカードの一部でとても遅くなる現象があった ようなので、新しく作りました。遅いマシンでも問題無く動くと思います。

例)
振幅8ピクセルで1秒間、画面を揺らす。
quake 8,1000 

/
page top / list / main

Ver.2.48【実行節のみ】
くえいくえっくす
quakex

画像エフェクト

quakex NUM,NUM

数値振幅(ピクセル)
数値時間(ミリ秒)

画面を横に揺らします。順に、回数,掛ける時間(ミリ秒)です。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
くえいくわい
quakey

画像エフェクト

quakey NUM,NUM

数値振幅(ピクセル)
数値時間(ミリ秒)

画面を縦に揺らします。順に、回数,掛ける時間(ミリ秒)です。

例)

/
page top / list / main

Ver.2.55【実行節のみ】
あーるとらっぷ、らいとぼたんとらっぷ
r_trap

クリック監視フラグジャンプ

r_trap LABEL

ラベル右クリックされた場合の飛び先

r_trap off

列挙トラップの解除用

右クリックを監視して、右クリックされるとラベルへジャンプします。
ジャンプ後は、自動的にトラップが解除されます。
r_trap offで、トラップを解除できます。
右クリックのみで反応する以外はtrap,lrtrapと同じです。

ver.2.75現在では、左クリックにも反応してしまいます。
(by senzogawa)
例)
例)

lr_trap / trap /
page top / list / main

Ver.2.48【定義節・実行節両用】
りーどふぁいる
readfile

追加機能

readfile $VAR,STR

文字変数ファイル内容を格納する変数
文字列読み込む対象のファイル名

文字変数にファイルの内容を読み込みます。

CRLF(\x0d\x0a)も読み込みます。
しかも比較演算子での比較はできないので、複数行を書き込む場合は最後の2バイトを読み飛ばす仕組みが必要です。
また、この命令で読んだファイルはログがとられないため、fchkでは既読判定ができません。
(by senzogawa)
例)
"file.txt"の内容を$0に取得する
readfile $0,"file.txt"

split /
page top / list / main

Ver.2.48【実行節のみ】
りぺいんと
repaint

画像表示

repaint

画面を書きなおします。もし画面が変になってたりしたら、これでなおるかも。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
りせっと
reset

ゲームスタート・リセット・終了

reset

ゲームをリセットし、最初に戻します。

例)
リセット確認後にリセットする
yesnobox %0,"いっそのこと、リセットしちゃいましょうか?","リセット確認"
if %0==1 reset

*start /
page top / list / main

Ver.2.48【定義節のみ】
りせっとめにゅー
resetmenu

ウィンドウメニュー関連

resetmenu

メニューをカスタマイズすることを宣言します。以降、insertmenuでメニューを挿入していきます。

例)
メニューをカスタマイズすることを宣言する。
resetmenu

deletemenu / insertmenu / killmenu /
page top / list / main

Ver.2.48【実行節のみ】
りせっとたいまー
resettimer

ウェイト・タイマー

resettimer

内部タイマを0にします。このタイマは、ミリ秒単位で回りつづけています。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
りたーん
return

ジャンプ

return [LABEL]

ラベルreturn時の飛び先

サブルーチンからリターンします。
かならずgosubとペアにしてください。

returnでの飛び先指定はVer.2.67より追加。
例)
return直後に*scene2に飛ぶ
return *scene2

/
page top / list / main

Ver.非公式【定義節のみ】
あーるごーさぶ
rgosub

右クリック機能設定

rgosub LABEL

ラベル右クリック時の呼び出し先

右クリック時の呼び出し先を設定します。
進行待ちの場合にプレイヤーが右クリックを押すと、設定したラベルをgosubで呼び出します。
returnすると、元の進行待ちの状態に戻ります。

systemcall命令は機能しません(by BBS)
例)

rmenu /
page top / list / main

Ver.2.48【定義節のみ】
あーるるっくばっく、らいとくりっくるっくばっく
rlookback

右クリック機能設定

rlookback

右クリックを押したとき、回想シーンに行くようにします。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
あーるめにゅー、らいとくりっくめにゅー
rmenu

右クリック機能設定

rmenu STR,{skip,reset,save,load,lookback,windowerase}[,...]

文字列右クリックメニューに表示する文字列
列挙文字列に対応させる機能の名前

右クリックを押したら、メニューが開くようにします。
文字列が、表示される選択肢で、機能は下に定義されているものから選びます。
システムメニュー機能定数
skip…「選択肢まで進む」をクリックするのと同じです。
reset…プログラムをリセットします。
save…セーブメニューを出します。
load…ロードメニューを出します。
lookback…回想モードに行きます。
windowerase…ウィンドウを消します。

例)
"セーブ"にセーブメニュー表示、"ロード"にロードメニュー表示、"回想"にバックログ表示機能を割り当てる。
rmenu "セーブ",save,"ロード",load,"回想",lookback 

/
page top / list / main

Ver.2.48【実行節のみ】
あーるもーど、らいとくりっくもーど
rmode

右クリック機能設定

rmode NUM

数値右クリック有効フラグ(0:無効、1:有効)

右クリックを一時的に無効にしたり有効にしたり出来ます。
数字は、1(ON)か0(OFF)のフラグです。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
あーるえぬでぃー、らんだむ
rnd

計算式・変数

rnd

数字変数結果の代入先
数値乱数の最大値+1の値

変数に乱数を代入します。
0~(二番目のパラメータ-1)の数字が入ります。

第二引数に0を指定すると強制終了します。(by senzogawa)
例)
0~99の乱数を発生させ、%5に代入する。
rnd %5,100

/
page top / list / main

Ver.2.48【定義節・実行節両用】
あーるえぬでぃーつー、らんだむつー
rnd2

計算式・変数

rnd2

数字変数結果の代入先
数値乱数の最小値
数値乱数の最大値

変数に、数字1~数字2の乱数を代入します。

例)
10~20の乱数を発生させ、%3に代入する。
rnd2 %3,10,20

/
page top / list / main

Ver.2.48【定義節のみ】
あーるおふ、らいとくりっくおふ
roff

右クリック機能設定

roff

右クリックを押しても何もおきないようにします。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
るびおふ
rubyoff

ルビ関連

rubyoff

ルビモードをオフにします。

例)
ルビモードをオフにする
rubyoff

rubyon /
page top / list / main

Ver.2.48【定義節・実行節両用】
るびおん
rubyon

ルビ関連

rubyon [NUM,NUM[,STR]]

数値ルビの横サイズ(デフォルトは文字の半分)
数値ルビの縦サイズ(デフォルトは文字の半分)
文字列ルビのフォント種類

ルビモードになります。文字は下詰めになります。

例)
ルビモードにします。 デフォルト設定では、ルビは本文の文字の縦横半分になります。
rubyon
例)
ルビの大きさを横10縦8ドットに指定します。 アンチエイリアスの都合上、最低13x13はないと見づらいかもしれません。
rubyon 10,8
例)
ルビの大きさを横14縦12、フォントに"MS ゴシック"を指定します。省略すると、テキストと同じ書体になります。
rubyon 14,12,"MS ゴシック"

rubyoff /
page top / list / main

Ver.2.80【実行節のみ】
るびおんつー
rubyon2

ルビ関連

rubyon2 NUM,NUM

数値ルビサイズX
数値ルビサイズY

その行にルビがあるときだけルビ表示モードにします(ADV形式でのclickpageとの併用を想定してます)。

ルビが増える分画面が狭くなることにご注意ください。
例)

rubyoff / rubyon /
page top / list / main

Ver.2.49【定義節のみ】
せーぶでぃる、せーぶでぃれくとり
savedir

セーブ・ロード

savedir STR

文字列セーブデータを格納するディレクトリ名

セーブデータを格納するフォルダを指定します。

envdataだけはnscr.exeと同じフォルダに出来てしまいます。
あらかじめフォルダは掘っておいてください。
例)
セーブデータを"savedata"フォルダに格納するように設定する
savedir "savedata"

savegame /
page top / list / main

Ver.2.48【実行節のみ】
せーぶふぁいるいぐじすと
savefileexist

セーブ・ロード

savefileexist %VAR,NUM

数字変数結果を取得する変数(0:存在しない、1:存在する)
数値セーブ番号

もしセーブファイルが存在すれば1、しなければ0を返します。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
せーぶげーむ
savegame

セーブ・ロード

savegame NUM

数値セーブ番号

そのセーブ番号にセーブします。何の確認もしませんので注意。

例)

/
page top / list / main

Ver.2.60【実行節のみ】
せーぶげーむつー
savegame2

セーブ・ロード

savegame2 NUM,STR

数値セーブ番号
文字列一緒に保存する文字列

セーブファイルそれぞれに固有の文字列を保存します。
あとはsavegameと同じです。

例)
セーブ番号12に、"8月5日 ヒロインAルート"を付属してセーブする。
savegame2 12,"8月5日 ヒロインAルート"

getsavestr / savegame /
page top / list / main

Ver.2.48【定義節のみ】
せーぶねーむ
savename

右クリック機能設定

savename

文字列セーブメニューのタイトル
文字列ロードメニューのタイトル
文字列セーブ自体の名前

セーブファイルの名前を指定します。
左から順に、セーブメニューの一番上の文字列、ロードメニューの一番上の文字列、そして、セーブ自体の名前です。
デフォルトでは、"<セーブ>","<ロード>","しおり"となっています。
これらは全部全角文字で設定してください。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
せーぶなんばー
savenumber

セーブ・ロード

savenumber NUM

数値セーブ可能数

セーブの最大数を変更します。最大20までです。デフォルトは9。
menusetwindowで、画面からセーブメニューがはみ出ないような設定にしないと、メニューを出した瞬間落ちるので注意してください。

例)

menusetwindow /
page top / list / main

Ver.2.48【実行節のみ】
せーぶおふ
saveoff

セーブ・ロード

saveoff

セーブモードをオフにします。
セーブできなくなるわけではなく、ロードすると最後にセーブオンだったところまで戻されるということです。
saveonの間は、スプライトを動かしたりしただけでもセーブデータを書きこみに行きますので、場合によってはパフォーマンスに影響が出るかもしれません。
ミリ秒単位でスプライトをいじるようなアニメ処理をしている間はsaveoffにすると動作が速くなるでしょう。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
せーぶおん
saveon

セーブ・ロード

saveon

saveoffでオフにしたセーブモードをオンにします。

例)

/
page top / list / main

Ver.2.93【実行節のみ】
せーぶぽいんと
savepoint

セーブ・ロード

savepoint

セーブポイントを更新します。
*define節で
autosaveoff
とすることで、saveon/saveoff命令は無視されるようになります。
(表示文頭ではセーブポイントは従来通り更新されます)。
表示文頭以外でセーブさせたい場合(たとえばクリッカブルマップなど)では、手書きでsavepoint命令を呼び出してください。タイミングによってはデータがうまく復帰できなかったりするので、画面全体を読み込んで描画する直前をセーブポイントにするとか、うまく工夫してください。

例)

autosaveoff / saveoff / saveon /
page top / list / main

Ver.2.48【実行節のみ】
せーぶすくりーんしょっと
savescreenshot

スクリーンショット

savescreenshot STR

文字列保存するファイル名

指定したファイル名でスクリーンショットを保存します。
同時に、メモリ内に確保した画像を削除します。
取得したスクリーンショットを何度も使用する場合はsavescreenshot2を使ってください。

例)
取得したスクリーンショットを"thumb01.bmp"で保存する
savescreenshot "thumb01.bmp"

deletescreenshot / getscreenshot / savescreenshot2 /
page top / list / main

Ver.2.48【実行節のみ】
せーぶすくりーんしょっとつー
savescreenshot2

スクリーンショット

savescreenshot2 STR

文字列保存するファイル名

指定したファイル名でスクリーンショットを保存します。
メモリ内に確保した画像を削除しません。
取得したスクリーンショットを削除する場合はdeletescreenshotを使ってください。

例)
取得したスクリーンショットを"thumb01.bmp"で保存する
savescreenshot "thumb01.bmp"

deletescreenshot / getscreenshot / savescreenshot /
page top / list / main

Ver.2.48【実行節のみ】
せーぶたいむ
savetime

各種情報取得

savetime NUM,%VAR,%VAR,%VAR,%VAR

数値セーブ番号
数字変数セーブ時の月を取得する変数
数字変数セーブ時の日を取得する変数
数字変数セーブ時の時を取得する変数
数字変数セーブ時の分を取得する変数

セーブファイルにセーブされたときの月、日、時、分を取得します。
セーブファイルが存在しない場合は、月の値に0を返します。

例)
セーブ番号3の月、日、時、分をそれぞれ%0,%1,%2,%3に取得し、表示する。もしセーブ番号3が無ければ、その旨を表示する。
savetime 3,%0,%1,%2,%3
if %0=0 goto *non
セーブ3番は%0月%1日%2時%3分@
end
*non
セーブ3番は存在しない。@
end

/
page top / list / main

Ver.2.48【実行節のみ】
せれくと
select

選択肢

select STR,LABEL[,STR,LABEL[,...]]

文字列表示する選択肢
ラベル選択時の飛び先

選択肢を表示し、その選択結果に対応するラベルへジャンプします。
文字列に""を入れると、その選択肢は表示されません。
(これは、selnumやselgosubでも同じです)
ただし、ひとつも文字列が無いとハングするので気をつけてください。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
せれくとびーてぃーえぬうぇいと、せれくとぼたんうぇいと
selectbtnwait

システムカスタマイズ関連

selectbtnwait %VAR

数字変数ボタン番号の格納先

customsel時のクリック待ちをする。

例)
入力待ちを行い、%0にボタン番号を取得する
selectbtnwait %0

*customsel / csel / cselbtn / cselgoto / getcselnum / getcselstr /
page top / list / main

Ver.2.48【定義節のみ】
せれくとからー
selectcolor

選択肢

selectcolor COLOR,COLOR

色値マウスカーソルが上にいるときの色
色値マウスカーソルが上にいないときの色

普通の選択肢の色を指定します。
順に、マウスが上にいるとき、いないとき、の色です。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
せれくとぼいす
selectvoice

選択肢

selectvoice STR,STR,STR

文字列選択肢が開くときに鳴らすWAVEファイル名
文字列選択肢のどれかの上に動いたとき鳴らすWAVEファイル名
文字列どれかの選択をクリックしたときのWAVEファイル名

普通の選択肢でのWAVE音声の指定です。
順に、選択肢が開くとき、選択肢のどれかの上に動いたとき、どれかの選択をクリックしたとき、の音です。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
せるごーさぶ、せれくとごーさぶ
selgosub

選択肢

selgosub STR,LABEL[,STR,LABEL[,...]]

文字列表示する選択肢
ラベル選択時の飛び先

selectのジャンプの代わりに、サブルーチンコールになったものです。
サブルーチンコールに付いては、gosubを参照。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
せるなむ、せれくとなんばー
selnum

選択肢

selnum %VAR,STR[,STR[,...]]

数字変数結果取得用の変数
文字列表示する選択肢

選択肢の結果を、数字変数に代入します。一番左が0で、以降1ずつ増えます。

select,selgosubと異なり、空文字列""の指定はできません。(by senzogawa)
例)

/
page top / list / main

Ver.2.48【実行節のみ】
せっとかーそる
setcursor

カーソル

setcursor NUM,STR,NUM,NUM

数値カーソル番号(0:クリック待ち、1:改ページ待ち)
文字列カーソル画像ファイル
数値カーソル表示位置を右方向に動かす量
文字列カーソル表示位置を下方向に動かす量

クリック待ち時のカーソル画像ファイルを読み込みます。
文字列は、順に、普通のクリック待ち、改ページクリック待ちです。
数字は、次に出る文字の左上のピクセルからX,Y方向にどれだけずらすかをX,Yの順で指定します。
デフォルトでは、 ":l/3,160,2;cursor0.bmp"(":l/3,160,2;cursor1.bmp"),0,0です。

例)

abssetcursor /
page top / list / main

Ver.非公式【実行節のみ】
せっとえふぇくとすぴーど
seteffectspeed

画像エフェクト

seteffectspeed NUM

数値エフェクト指定(0:通常(デフォルト),1:高速(1/2速度),2:瞬時(エフェクトカット))

エフェクト速度を指定します。

エフェクト番号を指定できる命令にのみ有効。by 幻惑卿
オフィシャル本「あどばんすどNScripter」にのみ載っているとのこと。by NScripter覚え書き
例)

effect / effectcut /
page top / list / main

Ver.2.70【定義節のみ】
せっときんそく
setkinsoku

追加機能

setkinsoku STR,STR

文字列行頭禁則文字列
文字列行末禁則文字列

文字列を、行頭禁則文字列,行末禁則文字列の順で指定することで、
禁則文字列を一から設定しなおします。define節専用です。

例)

addkinsoku /
page top / list / main

Ver.2.48【定義節のみ】
せっとれいやー
setlayer

プラグイン・アーカイブ

setlayer NUM,NUM,STR

数値レイヤ番号
数値更新間隔(ミリ秒)
文字列DLLファイル名

プラグインを指定されたレイヤ番号に登録します。
以降、layermessageにてレイヤ番号に対応したDLLにメッセージが送信できます。

例)

layermessage /
page top / list / main

Ver.2.48【実行節のみ】
せっとうぃんどう
setwindow

テキストウィンドウ

setwindow NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,STR,NUM,NUM

数値文字表示位置の左上座標X
数値文字表示位置の左上座標Y
数値横の文字数
数値縦の文字数
数値文字サイズ横
数値文字サイズ縦
数値横の文字間隔
数値縦の文字間隔
数値デフォルト表示速度
数値太字フラグ(0普通1太字)
数値影付きフラグ(0普通1太字)
文字列ウィンドウの画像ファイル
数値ウィンドウ表示位置の左上座標X
数値ウィンドウ表示位置の左上座標Y

setwindow NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,COLOR,NUM,NUM,NUM,NUM

数値文字表示位置の左上座標X
数値文字表示位置の左上座標Y
数値横の文字数
数値縦の文字数
数値文字サイズ横
数値文字サイズ縦
数値横の文字間隔
数値縦の文字間隔
数値デフォルト表示速度
数値太字フラグ(0普通1太字)
数値影付きフラグ(0普通1太字)
色値ウィンドウの色味
数値ウィンドウ表示位置の左上座標X
数値ウィンドウ表示位置の左上座標Y
数値ウィンドウサイズ横(色味指定時のみ)
数値ウィンドウサイズ縦(色味指定時のみ)

テキストウィンドウを指定します。
上は、透過度落としタイプ(色指定で色味を変えられます)
下は、画像ファイル名を指定して、それをウィンドウにするタイプです。
最初の11個は、左から順に、文字の左上座標X,Y,文字数横,縦,文字フォントサイズX,Y,字間X,Y,デフォルト表示スピード,太字フラグ(0普通1太字),影付きフラグ(0普通1太字)です。

上の場合は、順にウィンドウ色味,ウィンドウ左上X,Y,右下X,Y
下の場合は、順に画像ファイル名,ウィンドウ左上X,Y、です。
画像ファイルにはタグが使えます。

デフォルトでは、全画面の透過度落としタイプで、フォントは26x26ピクセル、字間は0,2、左上座標が8,16で、横23文字縦16文字、太字で影付き、スピードは20で、透過の色味は、#999999です。
命令に直すと、こうなります。
setwindow 8,16,20,23,26,26,0,2,20,1,1,#999999,0,0,639,479

例)
全画面で、フォントは26x26ピクセル、字間は0,2、左上座標が8,16で、横23文字縦16文字、太字で影付き、スピードは20で、ウィンドウに使う画像は"bg1.bmp"
setwindow 8,16,20,23,26,26,0,2,20,1,1,"bg1.bmp",0,0
例)
全画面の透過度落としタイプで、フォントは26x26ピクセル、字間は0,2、左上座標が8,16で、横23文字縦16文字、太字で影付き、スピードは20で、透過の色味は、#999999で表示
setwindow 8,16,23,16,26,26,0,2,20,1,1,#999999,0,0,639,479

setwindow2 / setwindow3 /
page top / list / main

Ver.2.48【実行節のみ】
せっとうぃんどうつー
setwindow2

テキストウィンドウ

setwindow2 STR

文字列ウィンドウCGファイル名(タグ指定可能)

setwindow2 COLOR

色値#色タグ指定

回想バッファを消さず、今表示しているウィンドウも文字も消さず、ウィンドウの見た目だけを変更する命令です。
setwindow命令のタグ指定もしくはウィンドウCG指定の部分だけを指定することが出来ます。他は何も変えられません。

例)
"twindow2.bmp"を透過無しでテキストウィンドウの画像に指定する。
setwindow2 ":c;twindow2.bmp"
例)

setwindow / setwindow3 /
page top / list / main

Ver.2.48【実行節のみ】
せっとうぃんどうすりー
setwindow3

テキストウィンドウ

setwindow3 NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,STR,NUM,NUM

数値文字表示位置の左上座標X
数値文字表示位置の左上座標Y
数値横の文字数
数値縦の文字数
数値文字サイズ横
数値文字サイズ縦
数値横の文字間隔
数値縦の文字間隔
数値デフォルト表示速度
数値太字フラグ(0普通1太字)
数値影付きフラグ(0普通1太字)
文字列ウィンドウの画像ファイル
数値ウィンドウ表示位置の左上座標X
数値ウィンドウ表示位置の左上座標Y

setwindow3 NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,COLOR,NUM,NUM,NUM,NUM

数値文字表示位置の左上座標X
数値文字表示位置の左上座標Y
数値横の文字数
数値縦の文字数
数値文字サイズ横
数値文字サイズ縦
数値横の文字間隔
数値縦の文字間隔
数値デフォルト表示速度
数値太字フラグ(0普通1太字)
数値影付きフラグ(0普通1太字)
色値ウィンドウの色味
数値ウィンドウ表示位置の左上座標X
数値ウィンドウ表示位置の左上座標Y
数値ウィンドウサイズ横(色味指定時のみ)
数値ウィンドウサイズ縦(色味指定時のみ)

回想バッファをクリアしない以外はsetwindowと同じ。

同じ縦横幅でないと、回想モードに入ったときにバグる。
例)
全画面で、フォントは26x26ピクセル、字間は0,2、左上座標が8,16で、横23文字縦16文字、太字で影付き、スピードは20で、ウィンドウに使う画像は"bg1.bmp"
setwindow3 8,16,20,23,26,26,0,2,20,1,1,"bg1.bmp",0,0
例)
全画面の透過度落としタイプで、フォントは26x26ピクセル、字間は0,2、左上座標が8,16で、横23文字縦16文字、太字で影付き、スピードは20で、透過の色味は、#999999で表示
setwindow3 8,16,20,23,26,26,0,2,20,1,1,#999999,0,0,639,479

setwindow /
page top / list / main

Ver.2.48【定義節・実行節両用】
えすいーぼる、さうんどえふぇくとぼりゅーむ
sevol

音楽・SE演奏

sevol NUM

数値ボリューム(0~100)

ボリュームをいじれます。

セーブはされませんので、手動で管理してください。
nsogg.dll,nsogg2.dll使用時はセーブされるようになった模様。
例)
効果音の音量を100にします(0-100)
sevol 100

bgmvol / chvol / mp3vol / voicevol /
page top / list / main

Ver.2.48【定義節・実行節両用】
しぇいどでぃすたんす
shadedistance

テキスト表示

shadedistance NUM,NUM

数値影を横に伸ばすサイズ(単位:px)
数値影を縦に伸ばすサイズ(単位:px)

影の位置を指定する。

Ver.2.62より実行節でも使用可能となりました。
その代わり、リセットしても設定は元通りになりません。(by senzogawa)
例)
影の位置を右に2ドット下に3ドットずらす
shadedistance 2,3

/
page top / list / main

Ver.2.48【実行節のみ】
しぇる
shell

外部コマンド実行

shell STR

文字列実行ファイル名

エクスプローラーから指定されたファイルを実行します。
ShellExecute APIを使います。同期実行はしません。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
さいん、しん
sin

計算式・変数

sin %VAR,NUM

数字変数計算結果の格納先
数値角度(単位は度)

三角関数sinθを取得します。
値は1000倍されたものが返ってきます。

例)
sin90°を%0に取得する
sin %0,90
;%0=1000になる。

cos / tan /
page top / list / main

ジャンプ

skip NUM

数値選択時の飛び先

数字は移動行数です。
行数が0ならば素通りします。それ以外の場合、そのskipの行から数えて、行数分だけ前(-)、後(+)に移動します。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
すきっぷおふ
skipoff

既読スキップ

skipoff

「次の選択肢まで進む」や「オートモード」などをそこで停止します。

スキップをONするにはsystemcall skipを使います。
一応、以下のようにルーチンを作りdefsubすればskiponを自作できます。(by senzogawa)
*skipon
systemcall skip
return
例)
スキップ状態を強制解除する
skipoff

systemcall /
page top / list / main

Ver.2.48【定義節のみ】
さうんどぷれすぷらぐいん
soundpressplgin

プラグイン・アーカイブ

soundpressplgin STR

文字列プラグインの指定

音楽圧縮プラグインを指定します。書式は、"ファイル名|関連付け拡張子"です。

例)
拡張子"nbz"の音楽圧縮プラグインとして"nbzplgin.dll"を指定する。
soundpressplgin "nbzplgin.dll|nbz"

/
page top / list / main

Ver.2.48【実行節のみ】
えすぴーびーてぃーえぬ、すぷらいとぼたん
spbtn

画像ボタン

spbtn NUM,NUM

数値スプライト番号
数値ボタン番号

btn命令と同じような使い方で、こちらはスプライトをボタンに指定します。ちゃんと透過とかもします。押されていない状態がセル0、押されている状態がセル1です。ボタンを押すと、ボタン番号が帰ってきます。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
えすぴーしーしーるけい、すぺーすれふとくりっく
spclclk

ボタンモード拡張

spclclk

btndefとbtnwait系命令の間に挟んでください。
そのボタン命令において、スペースバーを左クリックと同じ動作にします。

例)
スペースバーを左クリックと同じ動作にする。
spclclk

btndef / btnwait /
page top / list / main

Ver.2.48【定義節・実行節両用】
えすぴーふぉんと、すぷらいとふぉんと
spfont

画像表示

spfont STR,NUM,NUM,NUM,NUM,NUM,NUM

文字列フォント名
数値フォント横幅
数値フォント縦幅
数値文字間隔横
数値文字間隔縦
数値太字フラグ(0:普通,1:太字)
数値影フラグ(0:普通,1:影付)

spfont 'clear'

列挙clear:setwindowの設定に戻す

spfont "フォント名",横幅,縦幅,横字間,縦字間,太字フラグ,影フラグ
文字列スプライトのフォントを設定する
spfont clear
フォント設定をクリアして、setwindowを反映するモードに戻す
spfont "フォント名"
:s;という形式を使わない場合のみ、フォント名以外の全てのパラメータを省略できます。

Ver.2.62より実行節でも使用可能となりました。
Ver.2.66にてsetwindowの設定が適用されてしまうバグなどが修正されました。
clear指定はVer.2.67にて追加されました。
例)
文字列スプライトのフォント種類を「MS ゴシック」、デフォルトのサイズを横16縦16、字間を横0縦0、太字影付に設定
spfont "MS ゴシック",16,16,0,0,1,1
例)
スプライトのフォント設定をsetwindowで設定したフォント設定に戻します。
spfont clear

lsp /
page top / list / main

Ver.2.48【定義節のみ】
えすぴーあい
spi

プラグイン・アーカイブ

spi STR

文字列プラグインの指定

画像圧縮プラグインを指定します。書式は、"ファイル名|関連付け拡張子"です。

例)
拡張子"jpg"、"lf2"の画像圧縮プラグインとして、それぞれ"jpgplgin.dll"、"iflf2.spi"を指定する。
spi "jpgplgin.dll|jpg"
spi "iflf2.spi|lf2"

/
page top / list / main

Ver.2.48【定義節・実行節両用】
すぷりっと
split

追加機能

split STR,STR,$VAR|%VAR,$VAR|%VAR[,...]

文字列切り出す対象文字列
文字列区切り文字(一文字でなければなりません)
変数代入先変数

文字列を指定記号を区切りにして切り出して、指定した変数に値を代入します。
プラグインからの戻り値やreadfileで読んだ文字列の処理に使ってください。

同じ変数がある場合、最後に切り出した値が代入されます。(by eiji8pou)
切り出せる値が無い場合、数字変数は0、文字変数は""が代入されます。(by senzogawa)
例)
$0の内容を、"/"を区切り文字として指定の変数に切り出す
mov $0,"あいうえお/かきくけこ/15/25/さしすせそ"
split $0,"/",$1,$2,%0,%1,$3

$1=$1 ; あいうえお
$2=$2 ; かきくけこ
%0=%0 ; 15
%1=%1 ; 25
$3=$3 ; さしすせそ
\

readfile /
page top / list / main

Ver.2.48【実行節のみ】
えすぴーえすてぃーあーる、すぷらいとすとりんぐ
spstr

画像表示

spstr STR

複合ボタン用の文字列でのスプライト指定を単独で実行する命令です。
文字列 で実行できます。
ただし、cspやlspやvspと同じく後でprintが必要です。

例)
スプライト番号11を非表示、10のセル番号2と9を表示する。
spstr "C11P10,2P9"

/
page top / list / main

Ver.2.48【実行節のみ】
えすぴーうぇいと、すぷらいとうぇいと
spwait

ウェイト・タイマー

spwait NUM

数値スプライト番号

指定したスプライト番号のアニメーションが終わる(最初のコマに戻るか、もしくはストップする)のを待ちます。

例)
スプライト番号0のスプライトアニメが一巡するまで待つ
spwait 0

/
page top / list / main

Ver.2.48【実行節のみ】
すとっぷ
stop

音楽・SE演奏

stop

音楽をすべて止めます。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
えすてぃーあーるえいりあす、すとりんぐえいりあす
stralias

計算式・変数

stralias NAME,STR

名前文字列を表す名前
文字列別名で表す文字列

ファイル名エイリアスを作ります。以降、ファイル名の代わりに
そのエイリアスを使って指定できるようになります。

例)
ファイル":a/10,20,2;man_alpha.bmp"を指定したいときにはman_a0というエイリアスを使えるようにする。
stralias man_a0,":a/10,20,2;man_alpha.bmp"
; 以後、このファイルを指定したいときにはman_a0というエイリアスを使えます。
; たとえば、ld c,man_a0,1 は、ld c,":a/10,20,2;man_alpha.bmp",1 と同じ。

/
page top / list / main

Ver.2.62【実行節のみ】
えすてぃーあーるえすぴー、すとりんぐすぷらいと
strsp

画像表示

strsp NUM,STR,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM[,COLOR[,...]]

数値スプライト番号
文字列スプライト化する文字列
数値表示左上X座標
数値表示左上Y座標
数値横文字数
数値縦文字数
数値文字幅
数値文字高さ
数値文字間隔X
数値文字間隔Y
数値太字フラグ(0:無効、1:有効)
数値影フラグ(0:無効、1:有効)
色値文字色

strsp スプライト番号,文字列,左上X,左上Y,横文字数,縦文字数,字幅,字高さ,字間X,字間Y,ボールド指定(0or1),影指定(0or1)(,色指定)...
複数行の文字列スプライトを指定します。禁則処理には対応していませんが、横の端までいくと自動で改行します。明示的に改行したいときは\を指定してください。
spfontのフォント設定が反映されます。色指定をひとつまたは複数書くことで、セルの色指定が出来ます(色指定の数だけのセルが出来ます)

当初logsp2のエイリアスでしたが、Ver.2.65より仕様変更され、独立した命令となりました。
例)

spfont / strsph /
page top / list / main

Ver.2.81【実行節のみ】
えすてぃーあーるえすぴーえいち、すとりんぐすぷらいとえいち
strsph

画像表示

strsph NUM,STR,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM,NUM[,COLOR[,...]]

数値スプライト番号
文字列スプライト化する文字列
数値表示左上X座標
数値表示左上Y座標
数値横文字数
数値縦文字数
数値文字幅
数値文字高さ
数値文字間隔X
数値文字間隔Y
数値太字フラグ(0:無効、1:有効)
数値影フラグ(0:無効、1:有効)
色値文字色

strspの非表示版です。詳細はstrspを参照してください。

例)

spfont / strsp /
page top / list / main

Ver.2.48【定義節・実行節両用】
さぶ、さぶとらくと
sub

計算式・変数

sub %VAR,NUM

数字変数数値の演算先
数値演算する数値

数字変数から数字を引きます。

例)
%0から6を引き、さらに%2を引く。
sub %0,6
sub %0,%2

/
page top / list / main

Ver.2.48【実行節のみ】
しすてむこーる
systemcall

追加機能

systemcall NAME

名前機能を表す名前

システムメニューと同じ動作をします。
select,selgosubなどで飛んだ先で使えば、タイトルメニューなどが出来ます。
(その際には、rmodeで本来のシステムメニューは一時的に切っておいたほうがいいでしょう)
機能には、rmenuと同じ物が選べます。

systemcall rmenu とすると右クリックメニューと同じ効果です。
 これは、例えばボタンモードで右クリックしたときに、右クリックメニューを 出したいな、というときに使えます。 右クリックメニューから出ると、動作はこの命令の次の文へうつります。
(画面状態をうまく把握していないと、おかしなことになります。
 この命令の直後にテキストウィンドウの内容を消して書きなおすのが
 ベストかと思われます。)

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
てーぶるごーとぅー
tablegoto

ジャンプ

tablegoto %VAR,LABEL[,LABEL[,...]]

数字変数ジャンプのインデックスとなる値を格納した変数
ラベルジャンプ先のラベル。変数がとりうる最大値までの分が必要

テーブルジャンプ。
変数の値が0ならひとつめ、1ならふたつめ……と、
羅列したラベルの先へとジャンプする。

例)
変数番号0の値により、*label0~*label3にジャンプする
tablegoto %0,*label0,*label1,*label2,*label3

goto /
page top / list / main

Ver.2.48【実行節のみ】
たる
tal

画像表示

tal {l,c,r},NUM,EFFECT

列挙透過度の変更位置(l:左、c:中央、r:右)
数値不透過度(0~255)
エフェクト立ち絵表示時のエフェクト

その位置の立ち絵の透過度をその数に変えます。

公式マニュアルのようにエフェクト指定なしだとエラーとなります。(by senzogawa via はう)
例)

ld /
page top / list / main

Ver.2.48【定義節・実行節両用】
たんじぇんと、たん
tan

計算式・変数

tan %VAR,NUM

数字変数計算結果の格納先
数値角度(単位は度)

三角関数tanθを取得します。
値は1000倍されたものが返ってきます。

tanは90度,270度に特異点を持つことに注意してください。
例)
tan45°を%2に取得する
tan %2,45
;%2=1000になる。

cos / sin /
page top / list / main

Ver.2.48【定義節・実行節両用】
たてよこ
tateyoko

テキストウィンドウ

tateyoko NUM

数値1で縦書きモード、0で元に戻す

縦書きモードにする。詳細はサンプルで。

このほか、システムカスタマイズ命令は、システムカスタマイズサンプルで解説しています。
 縦書きモードもそちらにあります。
例)
縦書きモードにする。
tateyoko 1

/
page top / list / main

Ver.2.48【実行節のみ】
てぎぜく、てきすとえぐぜきゅーと
texec

システムカスタマイズ関連

texec

改ページ待ちの場合テキストを消去する。

例)
テキストを送る
texec

getcursorpos / texec2 / textbtnwait / textgosub /
page top / list / main

Ver.2.82【実行節のみ】
てぎぜく、てきすとえぐぜきゅーと
texec2

システムカスタマイズ関連

texec2

texec命令とほぼ同じだが、その場で文字を消さない。次の行を表示するときにクリアする。
(これは、選択肢時にテキストを消したくないときなどにつかいます)

2008/08/10版以降
例)
テキストを送る
texec2

getcursorpos / texec / textbtnwait / textgosub /
page top / list / main

Ver.2.74【実行節のみ】
てきすとびーてぃーえぬおふ、てきすとぼたんおふ
textbtnoff

テキストボタン

textbtnoff

デフォルトでは、テキストボタンはbtnwait時に自動的に登録されます。
btndefとbtnwait系命令の間にtextbtnoffをはさむと、テキストボタンが一時的にオフになります。
例えば、テキストボタン処理の中から別のボタン処理を呼ぶときに、テキストボタンをオフにするためにこの命令を使ってください。

例)
テキストボタンを無効にしてユーザの入力を待つ。
btndef clear
textbtnoff
textbtnwait %0

btnwait / btnwait2 / textbtnwait /
page top / list / main

Ver.2.65【実行節のみ】
てきすとぼたんすたーと
textbtnstart

テキストボタン

textbtnstart NUM

数値先頭とするテキストボタン番号(デフォルト1)

テキストボタン番号を省略したときの先頭の値を指定します。
デフォルトは1です。

例)
省略時のテキストボタン番号の先頭を3とする。
textbtnstart 3

<> /
page top / list / main

Ver.2.48【実行節のみ】
てきすとびーてぃーえぬうぇいと、てきすとぼたんうぇいと
textbtnwait

システムカスタマイズ関連

textbtnwait %VAR

数字変数ボタン番号の格納先

customwait時のクリック待ちをする。

例)
入力待ちを行い、%0にボタン番号を取得する
textbtnwait %0

getcursorpos / texec / textgosub /
page top / list / main

Ver.2.48【実行節のみ】
てきすとくりあ
textclear

テキスト表示

textclear

テキストウィンドウの中身だけを消します。

例)

/
page top / list / main

Ver.非公式【実行節のみ】
てきすとからー
textcolor

追加機能

textcolor COLOR

文字の色を変えます。HTMLで指定するのと同じ形式です。
(つまり、16進数で二桁づつ6ケタで指定、ということ。
 #000000が黒、#ffffffが白、#ffffaaが、白っぽい黄色になります。)
変えたら以後変わりっぱなしなので注意してください。

2007.11.04版から追加されたようです。english命令を利用する場合に、文字色の変更はこの命令を使う必要があります。マニュアルに記載されていないため、一応非公式としています。(by senzogawa)
例)
blue fontと青色の文字で表示する。
*define
english
game
*start
textcolor #0000ff
>blue font@
end

english /
page top / list / main

Ver.2.65【実行節のみ】
てきすといーえっくすびーてぃーえぬ、てきすといーえっくすぼたん
textexbtn

テキストボタン

textexbtn NUM,STR

数値テキストボタン番号
文字列複合ボタン用の制御文字列

textexbtn テキストボタン番号,制御文字列
これは、テキストボタンでexbtnと同様の処理をするためのものです。

例)

exbtn /
page top / list / main

Ver.2.49【実行節のみ】
てきすとふぃーるど
textfield

追加機能

textfield $VAR,NUM,NUM,NUM,NUM,NUM,NUM,NUM

文字変数デフォルト文字列兼入力結果を格納する変数
数値ウィンドウ左上X座標
数値ウィンドウ左上Y座標
数値ウィンドウ右下X座標
数値ウィンドウ右下Y座標
数値文字幅(1バイト分)
数値文字高さ
数値全角フラグ(1:全角文字限定)

ウィンドウ上にテキスト入力ウィンドウを開き、入力を待ちます(ダイアログではありません)。
ここで、指定する文字列変数にあらかじめ入っていた内容がデフォルトの文字列になります。
入力ウィンドウ外を左クリック、もしくはリターンキー、エスケープキー、TABキーを押した時に、関数から戻ってきます。
TABキーを押した場合は、getretでその旨判別できます。
この命令の後、
getret %0
として、%0に0が返ってくればTAB以外、1が返ってくればTABで命令を抜けたということを示します。

例)
ウィンドウ上の座標100,50から座標320,70に、 1バイト文字サイズ10,20で全角文字限定の テキスト入力ウィンドウを開き、$0に入力結果を取得する。
textfield $0,100,50,320,70,10,20,1

input / inputnum / inputstr /
page top / list / main

Ver.2.48【定義節のみ】
てきすとごーさぶ
textgosub

システムカスタマイズ関連

textgosub LABEL

ラベルクリック待ちで呼び出されるラベル

システムカスタマイズ時通常文章のクリック待ちで飛んでくるラベル。ここでシステムボタンなどを実装し、ユーザの入力を処理する。

例)
クリック待ち時に「*text_lb」にジャンプさせる
textgosub *text_lb

getcursorpos / texec / textbtnwait /
page top / list / main

Ver.2.49【実行節のみ】
てきすとはいど
texthide

バックログカスタマイズ

texthide

テクストウィンドウは表示したままで、文字だけを消します。
バックログを作るときに有意義です。

例)
テキストウィンドウの文字だけを非表示にする
texthide

textshow /
page top / list / main

Ver.2.48【実行節のみ】
てきすとおふ
textoff

テキストウィンドウ

textoff

テキストウィンドウを消します。

例)

texton /
page top / list / main

Ver.2.48【実行節のみ】
てきすとおん
texton

テキストウィンドウ

texton

テキストウィンドウを出します。

例)

textoff /
page top / list / main

Ver.2.49【実行節のみ】
てきすとしょう
textshow

バックログカスタマイズ

textshow

texthideで消した文字を復帰します。

例)
texthideで消した文字を復帰します。
textshow

texthide /
page top / list / main

Ver.2.48【実行節のみ】
てきすとすぴーど
textspeed

テキスト表示

textspeed NUM

数値一文字あたりの表示速度(ミリ秒)

テキスト表示速度を変更します。
!s数字と同じですが、変数を引数に使えます。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
てきすとすぴーどでふぉると
textspeeddefault

テキストウィンドウ

textspeeddefault

テキスト表示速度をデフォルトにする。
表示文ではないので、文字ウィンドウが出ていないときは表示されないままで実行できる。

例)
テキスト表示速度をデフォルトにする。
textspeeddefault

!sd /
page top / list / main

Ver.2.48【実行節のみ】
たいむ
time

各種情報取得

time %VAR,%VAR,%VAR

数字変数時を取得する変数
数字変数分を取得する変数
数字変数

マシンの現在の時刻を取得します。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
とらんすびーてぃーえぬ、とらんすぼたん
transbtn

画像ボタン

transbtn

btndefとbtnwait系命令の間に挟んでください。
そのボタン命令において、ボタン画像の透過部分をボタンとして無効にします。

例)
ボタン画像の透過部分をボタンとして無効にする。
transbtn

btndef / btnwait /
page top / list / main

Ver.2.48【定義節のみ】
とらんすもーど
transmode

画像表示

transmode {leftup,copy,alpha}

列挙leftup:左上色を透過色にする、copy:無透過、alpha:アルファブレンド

透過色のデフォルト設定を変えます。デフォルトではleftupです。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
とらっぷ
trap

クリック監視フラグジャンプ

trap LABEL

ラベル左クリックされた場合の飛び先

trap off

列挙トラップの解除用

左クリックを監視して、左クリックされるとラベルへジャンプします。
ジャンプ後は、自動的にトラップが解除されます。
trap offで、トラップを解除できます。

例)
例)

/
page top / list / main

Ver.2.48【実行節のみ】
とらっぷつー
trap2

クリック監視フラグジャンプ

trap2 LABEL

ラベル左クリックか「次の選択肢に進む」の場合の飛び先

trap2 off

列挙トラップの解除用

左クリックと「次の選択肢に進む」に反応するtrap命令です。

例)
例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
あんだーらいん
underline

画像表示

underline NUM

数値地面のラインとする座標

立ち絵の地面のラインを決めます。デフォルトは479です。

ver.2.92以降、実行節での使用が可能
例)

ld /
page top / list / main

Ver.2.48【定義節のみ】
ゆーずいーえすしーえすぴーしー、ゆーずえすけいぷすぺーす
useescspc

ボタンモード拡張

useescspc

(define節のみ)ボタン命令でescボタンとspcボタンを使う設定にします。
escボタンは-10、spcボタンは-11を返します。

例)
ボタン命令でescボタンとspcボタンを有効にする
useescspc

btndef / btntime / btntime2 / btnwait / getcursor / getenter / getfunction / getinsert / getpage / gettab / spclclk / useescspc / usewheel /
page top / list / main

Ver.2.48【定義節のみ】
ゆーずほいーる
usewheel

ボタンモード拡張

usewheel

(define節のみ)ボタン命令でホイールを使う設定にします。
ホイールは-2(上)と-3(下)を返します。
この場合、btntimeの時間切れは-5を返すようになります。

例)
ボタン命令でホイールを有効にする
usewheel

btndef / btntime / btntime2 / btnwait / getcursor / getenter / getfunction / getinsert / getpage / gettab / spclclk / useescspc / usewheel /
page top / list / main

Ver.2.48【実行節のみ】
ぶい、ぼいす
v

音楽・SE演奏

'v'NUM':'

数字音声ファイル名用の番号

ボイスを入れるときに便利な命令です。
wave "wav\数字.wav"と等価です。

例)
"「これが0001番のせりふだよー」"の表示時に、"wav\0001.wav"をwave命令で再生する
v0001:「これが0001番のせりふだよー」

dv / wave /
page top / list / main

Ver.2.48【特別定義語】
ばりゅー
value

特殊モード設定

'value'NUM

数値グローバル変数との境界

スクリプトの一行目で、
;value500
グローバル変数が500番からになります
(数字は0~4000の間で任意の数字です)
もし800x600モードと併用される場合は、
;mode800,value500
としてください。

;mode640,value500
のように、記述すると、;mode640が不正なため、valueは無視されることになります。
(by BBS)
例)
500以降をグローバル変数番号とする
;value500

;$ / mode320 / mode400 / mode640 / mode800 /
page top / list / main

Ver.2.48【定義節のみ】
ばーじょんえすてぃーあーる、ばーじょんすとりんぐ
versionstr

情報表示

versionstr STR,STR

文字列1行目に表示する文字列
文字列2行目に表示する文字列

バージョン情報のダイアログに表示する文字列を変えます。
左が一行目、右が二行目です。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
ぼいすぼる、ぼいすぼりゅーむ
voicevol

音楽・SE演奏

voicevol NUM

数値ボリューム(0~100)

ボイスのボリュームをいじれます。

セーブはされませんので、手動で管理してください。
nsogg.dll,nsogg2.dll使用時はセーブされるようになった模様。
例)
ボイスの音量を100にします(0-100)
voicevol 100

bgmvol / chvol / mp3vol / sevol /
page top / list / main

Ver.2.48【実行節のみ】
ぶいえすぴー、びじぶるすぷらいと
vsp

画像表示

vsp NUM,NUM

数値スプライト番号(0~255)
数値表示フラグ(0:非表示、1:表示)

そのスプライトの表示/非表示を変えます。
数字が0で非表示、1で表示です。

例)

/
page top / list / main

Ver.2.80【実行節のみ】
ぶいえすぴーつー、びじぶるすぷらいとつー
vsp2

拡張スプライト

vsp2 NUM,NUM

数値拡張スプライト番号
数値表示フラグ(0:非表示/1:表示)

拡張スプライトの表示/非表示を切り替える命令です。vspと使い方は同じです。

例)
拡張スプライト0番を非表示にする。
vsp2 0,0

amsp2 / csp2 / lsp2 / lsp2add / lsph2 / lsph2add / msp2 /
page top / list / main

Ver.2.48【実行節のみ】
うぇいと
wait

ウェイト・タイマー

wait NUM

数値待機する時間(ミリ秒)

数字ミリ秒分だけ、待ちます。クリックで飛ばせます。
特殊表示文字dと同じですが、変数を引数に使えます。

ver.2.96以降ではCPU食いつぶしが発生するため、この命令を利用するならver.2.95以前を利用すべき。(by BBS)
例)

/
page top / list / main

Ver.2.48【実行節のみ】
うぇいとたいまー
waittimer

ウェイト・タイマー

waittimer NUM

数値待機する時間(ミリ秒)

内部タイマが数字と等しくなるか超えるまで待ちます。
この命令が、NScripterで一番正確なウェイトを測る手段です。
画像エフェクトなどの時間設定は、それほど正確ではありません。

あるバージョンから、指定する値-経過時間が0未満になった場合にスプライトアニメの再生が行われないとのことで、wait 0にて対処の必要があります。(by BBS)
例)

/
page top / list / main

Ver.2.48【実行節のみ】
うぇいぶ
wave

音楽・SE演奏

wave STR

文字列WAVEファイル名

そのウェーブ音を鳴らします。
waveは一回だけです。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
うぇいぶるーぷ
waveloop

音楽・SE演奏

waveloop STR

文字列WAVEファイル名

そのウェーブ音を鳴らします。
waveloopは、音をループさせます。

例)

/
page top / list / main

Ver.2.48【実行節のみ】
うぇいぶすとっぷ
wavestop

音楽・SE演奏

wavestop

waveを止めます。

例)

/
page top / list / main

Ver.2.48【定義節のみ】
うぃんどうばっく
windowback

画像表示

windowback

テキストウィンドウを、立ち絵と同じ位置に挿入します。

Z軸上で立ち絵よりも手前側、かつ立ち絵よりも手前のスプライトよりは奥側の位置にウィンドウが来るようになります。
要はhumanzで指定した番号より小さい番号ならテキストウィンドウ上に描画できるようになります。(by senzogawa)
例)

humanz /
page top / list / main

Ver.2.48【定義節のみ】
うぃんどうちっぷ
windowchip

テキストウィンドウ

windowchip NUM

数値同期させるスプライト番号

指定したスプライトがテキストウィンドウと一緒についたり消えたりするようになる

例)
スプライト番号2をテキストウィンドウと一緒についたり消えたりするように設定
windowchip 2

/
page top / list / main

Ver.2.48【定義節・実行節両用】
うぃんどうえふぇくと
windoweffect

テキストウィンドウ

windoweffect EFFECT

エフェクトエフェクト指定

テキストウィンドウが出る/消えるときのエフェクトを指定します。
パラメータは、エフェクト番号指定がない以外は、effectと同じです。

例)
ウィンドウ表示・非表示に1秒間のクロスフェードを指定する。
windoweffect 10,1000

effect /
page top / list / main

Ver.2.48【実行節のみ】
うぃんえぐぜく
winexec

外部コマンド実行

winexec STR,NUM

文字列実行ファイル名
数値同期フラグ(0:非同期、!0:同期)

外部実行ファイルを実行します。WinExec APIを使います。
フルスクリーン時にはSW_MAXIMIZE、通常スクリーン時にはSW_SHOWNORMALを指定します。
数字に0以外を指定すると、そのプログラムと同期動作します。
NScripterのウィンドウにWM_USER+10が送られてくれば実行再開、WM_USER+20が送られてくればプログラムを終了します。
数字に0を指定すると、起動するだけでプログラムは先へ進みます。
Dolls Antiqueのデモプログラムとの連携に使った命令です。

例)

/
page top / list / main

Ver.2.48【定義節・実行節両用】
いえすのーぼっくす
yesnobox

追加機能

yesnobox %VAR,STR,STR

数字変数1がはい、0がいいえ
文字列表示するテキスト
文字列ダイアログのタイトル

Windowsのはい/いいえのダイアログボックスを出して、ユーザからの入力を変数に代入する。

例)
ロードの確認
yesnobox %0,"ロードしますか?","ロード確認"

okcancelbox /
page top / list / main

Ver.非公式【定義節のみ】
ぜんかっこ
zenkakko

文章タグ関連

zenkakko

全角の墨付き括弧【】をタグ指定として定義します。

最新版ではサポートされていません。【】に到達した時点で強制終了します。ver.2.82までは動作するようです。(by senzogawa)
区切り文字が半角「/」なのはそのままです。
例)
全角の墨付き括弧をタグ指定として使えるようにする
*define
pretextgosub *pretextproc
zenkakko
game
*start
【名前/音声】「せりふ」
click
end

*pretextproc
gettag $0,$1
mesbox $0,$1 ; 題名が"音声"、本文が"名前"のダイアログを表示
return

gettag / pretextgosub /
page top / list / main