09. 命令ダイジェスト
公式マニュアル第10章の制作者向け抜粋版です。入門で触れなかった命令も、カテゴリごとに一覧できます。引数の詳細・エイリアス・実装差分は 公式 第10章 を正としてください。
実演の探し方: feature_demo.txt は目次
*menu から章を選べます。章のラベルは
9.11 の早見表 にあります。
Windows では
lumina.exe --start-scenario=scenario/feature_demo --start-label=b_bg のように、章から直接始められます。
この章の命令は基本的に共通スクリプトとして扱えますが、動作結果が完全に同じとは限りません。特にプラグイン依存機能、ネイティブ UI、trans_begin → trans の演出は Windows / Android / ブラウザで差が出ます。
9.1 記法のおさらい
| 種類 | 書き方 | 例 |
| コマンド行 | 命令名で始まる1行 | bg 0 bg01a |
| メッセージ行 | 行頭タブの行(タブの無い日本語の行も文章になります) | (タブ)こんにちは。 |
| ラベル | *名前(または label 名前。コロンは付けません) | *chapter01 |
| コメント | // がおすすめ(; や # で始まる行もコメント) | // メモ |
| マクロ呼び出し | マクロ名を1行 | BG_FADE bg01a 30 |
| 条件ブロック | #if "条件" … #elif "条件" … #else … #endif(入れ子も可) | #if "route == 1" |
| 数字の単位 | 使う命令 |
| フレーム(60 = 1 秒) | bg・chara_show / chara_change / chara_hide・move・BG_ マクロ(BG_CROSS を除く) |
| ミリ秒(1000 = 1 秒) | fadein / fadeout / fadecolor・crossfade・wipe・fadethrough・trans・bgm / bgm_stop / bgmfade・wait・evcg_*・BG_CROSS |
命令の別名(エイリアス)について
同じ動作をする組み合わせは次の通りです。どちらで書いても構いません。
| 命令 | 別名 | 内容 |
jump | goto / jumpfile | ラベル・ファイルへ飛ぶ |
end | exit | 終了してタイトルへ戻る |
choice | select | 選択肢 |
bgm | bgm_play | BGM 再生 |
jumpstop | scenestop | シーン送りを止める場所 |
trans_begin | backlay | 場面まるごとの切り替えの準備 |
stopmovie | movie_stop | 動画を止める |
次は名前が似ていますが、別の命令です: movie(終わるまで待つ)と movie_play(待たずに次へ)、vo(キャラ別の音量・ミュート・口パクが効く)と voice、evcg_show と eventcg、chara_show(立ち絵)と sprite(小さな絵)。
9.2 テキスト・メッセージ
| 命令 | 用途 | 例 |
msgshow / msghide | ウィンドウ表示/非表示 | msgshow |
name | 話者名(name "" でクリア) | name "太郎" |
message | 明示メッセージ | message "…" |
msgclear | 表示テキストクリア | msgclear |
textspeed | 文字送り速度(1 文字あたりのミリ秒。0 で一度に表示) | textspeed 30 |
showtext | 座標指定テキスト | showtext "…" 100 200 |
wait | ミリ秒待機 | wait 1000 |
click | クリック待ち | click |
| 本文のタグ | ふりがな・色・大きさ | <ruby=はる>春</ruby> <color=#ffd45a>…</color> <size=34>…</size> |
9.3 背景
| 命令 | 用途 | 例 |
bg | 背景表示(フェード可。数字はフレーム) | bg 0 bg01a 0 0 fadein 30 sync |
clearbg | 背景クリア | clearbg |
crossfade | クロスフェード | crossfade bg01b 1000 |
wipe | ワイプ(方向 / ルール画像) | wipe bg01b 800 left
wipe bg01b 800 1080p_rule10 |
bg(ルール) | ルール画像(data7\rule)で背景を切り替え | bg 0 bg01b 0 0 015 60 |
fadethrough | 単色を挟んで切り替え | fadethrough bg01a 1000 |
trans_begin / trans | 場面まるごと(立ち絵ごと)をルール画像で切り替え。演出は Windows のみで、ほかの環境では演出なしで切り替わります | trans_begin … 場面を変える … trans 015 1200 |
bg_scroll | 背景を流し続ける | bg_scroll 0 bg02_scroll 0 0 40 0 |
move | 層の移動(フレーム) | move 0 100 0 30 |
定型フェードは 07章 の BG_FADE などマクロが便利です。
9.4 立ち絵・スプライト・イベントCG
立ち絵
| 命令 | 用途 |
chara_show | 表示(位置は center / left / right / middleleft / middleright) |
chara_hide | 退場 |
chara_change | 表情差し替え |
chara_clear | まとめて消去 |
chara_fit | 映す割合(例: chara_fit 0 100 で全身) |
chara_filter | 拡大縮小のなめらかさ |
chara_voice_id / chara_lipsync / chara_voice_sync など | 声に合わせた口パク・表情の切り替え |
スプライト・イベントCG
| 命令 | 用途 |
sprite / spritemoveto / spritealpha / hidesprite / clearsprites | 小物スプライト(例: sprite 1 petal_1) |
evcg_show / evcg_hide | イベント CG(例: evcg_show "smile" 600) |
evcg_change / evcg_move / evcg_layer | 差分の切り替え・寄り・差分レイヤー |
cg_flag | CG 既読フラグ(ギャラリー。例: cg_flag cg01 0) |
9.5 音声
| 系統 | 代表命令 | 例 |
| BGM | bgm bgm_stop bgm_vol bgmfade bgm_pause bgm_resume setbgmloop | bgm title 800 |
| SE | se stopse se_vol seloop se_pan | se sysse01 |
| ボイス | vo vo_wait stopvoice vo_pan vo_sync voice_volume voice_mute | vo vo01_0001 |
| 声の間だけ BGM を下げる | ducking conf_voice_ducking | ducking 1 25 |
9.6 画面エフェクト・カメラ
| 命令 | 用途 |
fadein / fadeout / fadecolor | 画面フェード(終わるまで待つ) |
quake / shake | 画面揺れ |
flash | フラッシュ |
color_monochrome / color_sepia / color_restore | 色調フィルタ |
coloradjust / gamma / sharpness | 明るさ・コントラスト・彩度などの調整 |
snow / rain / sakura | 天候エフェクト(例: snow 150) |
particle_playasset / stopparticle | 設定ファイル(data0\particle)からのパーティクル(例: particle_playasset sakura_soft) |
camera / resetcamera | カメラ移動・ズーム |
effect_start / effect_stop | 汎用エフェクト |
fx_line / fx_circle / fx_clearall など | 画像を使わない図形の演出(組み合わせは fxdraw.txt のマクロ) |
blendmode / resetblend | 合成モード(加算など) |
トランジションやカメラ系は、まず Windows で確認し、そのあと Android / ブラウザでも破綻しないかを見るのが安全です。
9.7 制御フロー・選択肢・変数
| 命令 | 用途 |
jump / goto | 同じファイルは jump *ラベル、別のファイルは jump ファイル *ラベル |
gosub / return | サブルーチン |
end / exit | シナリオ終了(タイトルへ戻る) |
choice / select | 選択肢 |
#select_clear → #select_add → #select_show | 選択肢を 1 つずつ足して出す(3 つめの引数 0 で選べない項目) |
#select_view | 画面を少し暗くして出す 1 行の選択肢 |
select_timeout 制限ms [既定] | 次の選択肢 1 回だけに制限時間を付ける(選択肢の直前の行に書く。# は付けない)。既定は時間切れで選ぶ番号(1 から)か *ラベル、省くと 1 つ目。残り時間の帯が出る。例: select_timeout 5000 *no_answer |
setvar / addvar | 変数操作 |
if | 条件ジャンプ(ラベルの * は有無どちらでも可) |
#if / #elif / #else / #endif | 条件ブロック |
random / randomjump | 乱数 |
automode / skipmode | オート/スキップ |
jumpstop | シーン送り(メッセージ枠の ▶▶)が止まる場所。章の入口に置きます |
sysscript | システムスクリプトを 1 本動かす(例: sysscript Flowchart) |
screen_show | 組み立て済みの画面を開き、選ばれた番号を変数に入れる |
実践例は 06章 を参照。
9.8 シーン・ギャラリー・UI
| 命令 | 用途 |
scene_start | シーン回想の開始登録 |
scene_end | シーン回想の解放 |
scenetitle | セーブ一覧に出る場面名(オートセーブも 1 件残ります) |
autosave | その場所でオートセーブ |
cg_flag | CG ギャラリー用フラグ |
setclearflag / setsysflag / addsysflag / setflowflag / addflowflag | どのセーブでも共通に残る永続フラグ(06章) |
menubar | 上部メニューバー ON/OFF(on / off) |
title | ウィンドウのタイトル(題名)を変える |
scene_start / セーブ UI との関係は 10章 を参照。
9.9 シナリオから呼べるオブジェクト記法
一部の命令は Object.method 形式でも書けます(現状は主に次の2つ)。ふだんは movie や se などの命令を使ってください。
| オブジェクト | 例 |
Movie | Movie.play("logo/lumina_logo") Movie.stop() |
Sound | Sound.stop() |
System.* などのシステム API は、シナリオ行からは呼べません。システムスクリプトを動かしたいときは
sysscript 名前 を使います(
10章)。
9.10 プラグイン依存(参照のみ)
Windows では、DLL フォルダのプラグインを、最初に使ったときに自動で読み込みます。読み込めるのは、system\Initialize.txt の setAllowedPlugins に書いた DLL だけです。Android / ブラウザでは、それぞれの環境向けの実装で動きます。
| カテゴリ | 代表命令 |
| 動画 | movie movie_play playmovie stopmovie setmovievolume(3 つの環境で再生できます) |
| アニメ(mruanime) | animeload animecreate animemotion |
| モーション(mrumotion) | motionload motioncreate motionmotion |
| カテゴリ | Windows | Android | ブラウザ |
| 通常のシナリオ命令 | ほぼ共通 | ほぼ共通 | ほぼ共通 |
| 確認ダイアログ(画像式) | 利用可 | 利用可 | 利用可 |
| ネイティブメニュー / OS 標準のメッセージボックス | 利用可 | なし | なし |
場面まるごとの切り替え(trans_begin → trans) | 演出あり | 演出なし | 演出なし |
| DLL 前提の拡張 | 利用可 | 要個別確認 | 要個別確認 |
| 動画 | 再生可 | 再生可 | 再生可 |
時間制限付きの選択肢(select_timeout) | 利用可 | 利用可 | 利用可 |
| ゲームパッド | 利用可(窓が前面のとき) | 利用可 | 利用可 |
9.11 カテゴリ早見表(feature_demo)
| ラベル | 主な内容 |
*menu | 目次(基本 *menu_basic〜*menu_basic4、応用 *menu_adv〜*menu_adv4) |
*b_text / *b_rich | 文章の見せ方・本文のタグ |
*b_bg | 背景の切り替え |
*b_chara | 立ち絵 |
*b_sound / *b_sound2 | BGM・ボイス/音をあやつる |
*b_select | 選択肢と変数 |
*b_branch | 分岐のいろいろ(条件・乱数・サブルーチン) |
*b_sprite / *b_menubar / *b_autoskip / *b_player | スプライト・上部メニューバー・オートとスキップ・プレイヤーの機能 |
*a_fx / *a_fx2 | 画像を使わない図形の演出 |
*a_effect / *a_color | 揺れ・色調・粒子/色調と合成モード |
*a_camera / *a_scroll | カメラと横長・縦長の背景/背景を流す |
*a_evcg / *a_evcg2 | イベント CG・差分レイヤー |
*a_lipsync / *a_lip2 | 口パク |
*a_screen | 画面プリミティブ(フローチャートなど) |
*a_system | オート・オートセーブ・scenetitle |
*a_split | シナリオをファイルに分ける |
*a_macro | マクロ |
*a_particle | パーティクル(設定ファイルから) |
*a_flag2 | 記録とフラグ |
*a_movie | 動画 |