AIRNovel(テンプレート専用の)マクロ リファレンス

はじめに

  • サンプルゲームのソースとして配布しているマクロは全てMIT Licenseです。自由に改変してご活用ください。
  • マクロは組み込みタグを組み合わせたものです。自由に改変・追加することができますが、アップデート時に上書きしないようバックアップを推奨します。
  • 「sub.an内で定義」とあるマクロは一度「[call fn="sub"]」とする事で定義し、使用できるようになります。「_yesno.an内で定義」なら同様に「[call fn="_yesno"]」です。
  • sub.an冒頭の定数はシステム画面などのボタン押下効果音です。ご自分のゲームによって変更してください。立ち絵配置位置定数も同様です。
  • (タグと同じく)全てのマクロには属性condが指定でき、指定した場合は「評価結果が真(true)の時のみタグを処理する」という条件分岐が可能です。
  • その他はタグリファレンスの「はじめに」と同様です。
  • 【2013/01/16追記】サンプルゲームの「再起動時に元の場所から再開する機能」はマクロにより実現しています。最初から再開したい場合は【タイトルへ戻って終了→アプリ再起動】か【どこでも終了→アプリ再起動時にESCキーを押しっぱなし】して下さい。

フレームワーク

[ask_ync] プレイヤー意志確認(_yesno.an内で定義) プレイヤーに「はい」「いいえ」等の二択で確認を行なう。
プレイヤーが押下した結果をtmp:_yesnoに「y」か「n」で返す。

ボタン素材としてファイル名がMnu_btnOK・Mnu_btnCancelの画像ファイルと、
ダイアログ素材としてファイル名が_yesnoの画像ファイルを使用する
属性必須省略時値域・型コメント
mesyStringプレイヤーに質問したい文言
[sys_scenario_start] シナリオ開始時共通処理(sub.an内で定義) 引数無し。
タイトルからゲーム本編を開始する際の処理を行なう。
シナリオファイル冒頭に記述するべき。
[sys_title_start] タイトル開始共通処理(sub.an内で定義) 引数無し。
ゲーム本編を開始する際の処理を行なう。
タイトルから本編、あるいはしおりロードから本編を開始する際に呼ぶ。

クリック待ち記号、フォント、セーブロード・設定画面などを準備する。

システム

[wc] 文字数分のウェイトを入れる(sub.an内で定義) アプリ開始時やゲーム本編からタイトルに戻る際の処理を行なう
属性必須省略時値域・型コメント
timey整数値0.0〜指定した文字数 x 文字表示ウェイト 分のウェイトを行なう

文字・文字レイヤ

[plc] 改ページ(sub.an内で定義) 改ページと関連処理を行なう。
改ページ記号を表示する前に「自動読み進み状態で」「音声が再生中」なら音声再生終了を待つ。
改ページ記号を表示しクリックを待ち、
押下後[er](テキストを消去)し[record_place](ゲーム状態をバッファに退避)する。

「履歴画面で選択位置から再開する」機能は配布状態では無効になっている。
『; [h_ss_upd] ; 〜』
『; [h_save] ; 〜』
のコメントを外し、シナリオファイル最初の[grp]直後に[h_save]を置くと有効になる。
属性必須省略時値域・型コメント
no_voice_stopnfalseBooleantrueなら改ページ後、音声(バッファ名「音声」の効果音)をフェードアウトしない
no_se_stopnfalseBooleantrueなら改ページ後、効果音(バッファ名「SE」の効果音)をフェードアウトしない
visiblentrueBooleantrueで改ページ記号を表示、falseで非表示
[after_choice] 選択肢直後処理(sub.an内で定義) 引数無し。
[link]など選択肢直後にコールする。
[record_place]などを呼んでいます。
[txt_lay_v_left] テキストレイヤ縦書き左設定(sub.an内で定義) 文字レイヤを設定する。サンプルゲーム「櫻の樹の下には」の設定。
このマクロで文字レイヤ(page=back)に設定しておき、
[grp]で場面転換と共に文字レイヤの設定を変えるような使い方をする
属性必須省略時値域・型コメント
layernmesレイヤ名処理対象の文字レイヤ
pagenbackfore、backページの裏表
visiblentrueBooleantrue:表示、false:非表示
ln40整数値テキストウインドウの左端横座標
wn292整数値テキストウインドウの横幅
pln属性l + 26整数値テキストウインドウの左端から内側方向への、文字表示領域との間隔
ptn66整数値テキストウインドウの上端から内側方向への、文字表示領域との間隔
prn画面横幅
-(属性l +属性w ) + 26
整数値テキストウインドウの右端から内側方向への、文字表示領域との間隔
pbn66整数値テキストウインドウの下端から内側方向への、文字表示領域との間隔
fcoln0xffffff色指定。0x000000などテキスト色
b_colorn0x000000色指定。0x000000などテキストウインドウの背景色
b_alphansys:TextLayer.Back.Alpha0.0〜1.0(実数)テキストウインドウの背景の透過度。
0(完全透明)〜0.5(半透明)〜1(不透明)
[txt_lay_v_center] テキストレイヤ縦書き中設定(sub.an内で定義) 文字レイヤを設定する。「txt_lay_v_left(テキストレイヤ縦書き左設定)」を画面中央に移動したもの。
txt_lay_v_left(テキストレイヤ縦書き左設定)」の設定に加え以下指定を行なったもの
属性必須省略時値域・型コメント
ln366整数値テキストウインドウの左端横座標
[txt_lay_v_center_wide] テキストレイヤ縦書きWide中設定(sub.an内で定義) 文字レイヤを設定する。「txt_lay_v_center(テキストレイヤ縦書き中設定)」を画面中央に移動し、幅を広げたもの。
txt_lay_v_center(テキストレイヤ縦書き中設定)」の設定に加え以下指定を行なったもの
属性必須省略時値域・型コメント
ln294整数値テキストウインドウの左端横座標
wn、固定436整数値テキストウインドウの横幅
[txt_lay_fullscreen] テキストレイヤ全画面設定(sub.an内で定義) 文字レイヤを設定する。全画面を覆うような設定
属性必須省略時値域・型コメント
layernmesレイヤ名処理対象の文字レイヤ
pagenbackfore、backページの裏表
visiblentrueBooleantrue:表示、false:非表示
ln16整数値テキストウインドウの左端横座標
wn画面横幅 -16 *2整数値テキストウインドウの横幅
pln28整数値テキストウインドウの左端から内側方向への、文字表示領域との間隔
ptn42整数値テキストウインドウの上端から内側方向への、文字表示領域との間隔
prn639整数値テキストウインドウの右端から内側方向への、文字表示領域との間隔
pbn479整数値テキストウインドウの下端から内側方向への、文字表示領域との間隔
fcoln0xffffff色指定。0x000000などテキスト色
b_colorn0x000000色指定。0x000000などテキストウインドウの背景色
b_alphansys:TextLayer.Back.Alpha0.0〜1.0(実数)テキストウインドウの背景の透過度。
0(完全透明)〜0.5(半透明)〜1(不透明)
[sysmenu_draw] システムメニュー描画処理(sub.an内で定義) 文字レイヤ mes_sysmenu に表示するシステムメニューを設定する。
このマクロを改造し、ボタンの画像変更・位置変更・増減を行える。
属性必須省略時値域・型コメント
no_sysmenu_drawnなにもしないBooleantrueを指定すると、次の[grp]などでの文字レイヤ[trans]などでシステムメニューを表示しない
[sys_menu] システムメニュー表示切り替え(sub.an内で定義) 文字レイヤ mes_sysmenu に表示するシステムメニューを設定する。
このマクロを改造し、ボタンの画像変更・位置変更・増減を行える。

画像・画像レイヤ

[fg] 立ち絵変更(ext_fg.an内で定義) (拡張機能になり、解説は拡張機能ギャラリー【クロスフェードでレイヤ画像を変更】に移動しました)
[grp] 場面転換(sub.an内で定義) 文字レイヤをフェードアウトし、
クロスフェードしながら背景画像(レイヤ名baseの画像レイヤ)を変更、
前景レイヤ(レイヤ名0〜2の画像レイヤ)をクリアor画像変更し、
文字レイヤをフェードインする。
属性必須省略時値域・型コメント
bgy何もしない画像ファイル名背景レイヤに対する画像ファイルを指定する
fbn何もしない[add_face]で登録した差分画像(半角カンマ区切りで複数可能)背景レイヤに対する差分画像ファイルを指定する
l0nクリアする画像ファイル名前景レイヤ0に対する画像ファイルを指定する
f0n何もしない[add_face]で登録した差分画像(半角カンマ区切りで複数可能)前景レイヤ0に対する差分画像ファイルを指定する
pos0ncc、横座標前景レイヤ0に対する横座標を指定する。
left0n0(pos指定が優先)画面左上を(0, 0)とする座標 前景レイヤ0に対する表示座標を指定する。
※left使用時はtopも必須です
top0
o0n何もしない0.0〜1.0(実数) 前景レイヤ0に対するレイヤの透過度。
0(完全透明)〜0.5(半透明)〜1(不透明)
l1nクリアする画像ファイル名前景レイヤ1に対する画像ファイルを指定する
f1n何もしない[add_face]で登録した差分画像(半角カンマ区切りで複数可能)前景レイヤ1に対する差分画像ファイルを指定する
pos1ncc、横座標前景レイヤ1に対する横座標を指定する。
left1n0(pos指定が優先)画面左上を(0, 0)とする座標 前景レイヤ1に対する表示座標を指定する。
※left使用時はtopも必須です
top1
o1n何もしない0.0〜1.0(実数) 前景レイヤ1に対するレイヤの透過度。
0(完全透明)〜0.5(半透明)〜1(不透明)
l2nクリアする画像ファイル名前景レイヤ2に対する画像ファイルを指定する
f2n何もしない[add_face]で登録した差分画像(半角カンマ区切りで複数可能)前景レイヤ2に対する差分画像ファイルを指定する
pos2ncc、横座標前景レイヤ2に対する横座標を指定する。
left2n0(pos指定が優先)画面左上を(0, 0)とする座標 前景レイヤ2に対する表示座標を指定する。
※left使用時はtopも必須です
top2
o2n何もしない0.0〜1.0(実数) 前景レイヤ2に対するレイヤの透過度。
0(完全透明)〜0.5(半透明)〜1(不透明)
rulen画面全体ピクセルで同時にクロスフェードする画像ファイル名(swf不可) [trans]と同じ
その他[trans]と同じ属性
timen1000ミリ秒背景・前景の画像レイヤ変化にかける時間
txt_timen300ミリ秒文字レイヤ変化にかける時間
nofo_txtnfalseBooleantrueなら文字レイヤをフェードアウトしない
nofi_txtnfalseBooleantrueなら文字レイヤをフェードインしない
sen何もしない効果音ファイル名場面転換と同時に再生する効果音

BGM・効果音

[bgm] BGM切り替え(sub.an内で定義) BGMをクロスフェードする。
属性必須省略時値域・型コメント
fnyBGM音声ファイル名 再生する音声ファイル名
timen再生中の曲を瞬時に停止し、指定曲を即座に再生するミリ秒変化にかける時間

効果音を再生

[se] 効果音を再生(sub.an内で定義) [playse]に引数省略時音声停止機能を付けたもの。
属性必須省略時値域・型コメント
fnn音声停止音声ファイル名 再生する音声ファイル名
bufn音声効果音を識別するトラック名トラック名を変えれば同時に複数の音を操作することが出来ます

履歴画面

[h_voice] 音声履歴開始(sub.an内で定義) 引数無し。
履歴画面、台詞クリックで再度音声再生する機能を提供する。タグで台詞を囲む。
例)
[voice fn="音声ファイル"]
[h_voice]「はい」[end_h_voice]@
[end_h_voice] 音声履歴終了(sub.an内で定義) 引数無し。
履歴画面、台詞クリックで再度音声再生する機能を提供する。タグで台詞を囲む。
例)
[voice fn="音声ファイル"]
[h_voice]「はい」[end_h_voice]@
[h_save] 履歴再開情報保存(sub.an内で定義) 引数無し。
履歴画面、クリックでそのページから再開する機能を提供する。
詳細は[plc]にて。
[h_ss_upd] 履歴サムネイル更新(sub.an内で定義) 引数無し。
履歴画面、クリックでそのページから再開する機能を提供する。
詳細は[plc]にて。
inserted by FC2 system