[ ] で囲まれた部分がタグになります。
@で始まる行も、タグとして認識しますが、1行で記述しなければなりません
;(セミコロン)で始まる行はコメントとして扱われます。
複数行にわたってコメントにする場合は、/* からはじめて */ で 閉じることでコメントになります。
すべてのタグにcond属性があります。JS式を記述して、その結果が真の場合のみタグが実行されます
_(半角アンダーバー)で始まる行は、文章の前に空白を挿入することができます。
オブジェクトにアニメーション効果を与えることができます。
対象はイメージ、3Dモデル、サウンドなど様々です。
パラメータ | 必須 | 解説 |
---|---|---|
name | ◯ | アニメーションをさせたいオブジェクトのnameを指定してください |
method | × | アニメーションの種類を選択します。デフォルトはposition。 rorateを指定すると角度を指定できます。direction |
x | × | アニメーション先のx座標を指定してください。methodにrotateを指定した場合はX軸回転度を指定します(0〜360) |
y | × | アニメーション先のy座標を指定してください。methodにrotateを指定した場合はY軸回転度を指定します(0〜360) |
z | × | アニメーション先のz座標を指定してください。methodにrotateを指定した場合はZ軸回転度を指定します(0〜360) |
repeat | × | アニメーションのリピート回数を指定できます。デフォルトは0です |
time | × | アニメーションにかける時間を指定できます。ミリ秒で指定して下さい。デフォルトは2000 |
effect | × | アニメーションの仕方を指定できます。デフォルトはease-in-out。(linear/ease/ease-in/ease-out/ease-in-out など) |
wait | × | アニメーションの完了を待つか否かを指定できます。trueかfalseを指定してください。デフォルトはtrue |
relative | × | trueを指定すると今あるオブジェクトの位置を基準に指定された座標分移動します(相対座標)falseを指定すると絶対座標として指定された位置に移動します。デフォルトはfalse |
[anim name="target" x=10 y=10 z=-5]
VR空間で使用するオーディオファイルを定義します。
定義しておくことで事前に読み込んでおくことが出来るので、スムーズに再生できます。
実際にファイルを使用する場合は[playbgm]を使用してください。
パラメータ | 必須 | 解説 |
---|---|---|
id | ◯ | オーディオファイルに付与するidを指定してください |
storage | ◯ | 音楽ファイルを指定してください。音楽はbgmフォルダに配置します。形式についてはmp3形式を推奨しています |
folder | × | bgmフォルダ以外に配置したファイルを読み込みたい場合は、ここにフォルダ名を指定してください |
preload | × | trueかfalseで指定します。デフォルトはtrue。オーディオファイルを予めロードするかを指定できます |
[audio_new id="music1" storage="sample.mp3"]
[playbgm id="music1" ]
BGMを再生します
パラメータ | 必須 | 解説 |
---|---|---|
id | × | [audio_new]タグで指定したidのファイルを再生できます。name |
storage | × | 音楽ファイルを直接指定できます。音楽はbgmフォルダに配置してください。この場合はidを指定しないでください。ただし、読み込みまでに時間がかかる場合があります。 |
loop | × | trueかfalseを指定します。trueを指定するとBGMをループして再生します |
volume | × | 音量を指定できます 0〜100 の間で指定してください。0を指定すると無音になります |
[audio_new id="music1" storage="sample.mp3"]
[playbgm id="music1" ]
効果音を再生します
パラメータ | 必須 | 解説 |
---|---|---|
id | × | [audio_new]タグで指定したidのファイルを再生できます。 |
name | × | オーディオにnameを指定できます。停止する際などにこの名称を指定して停止させることができます |
storage | × | 音楽ファイルを直接指定できます。音楽はbgmフォルダに配置してください。この場合はidを指定しないでください。ただし、読み込みまでに時間がかかる場合があります。 |
loop | × | trueかfalseを指定します。trueを指定すると効果音がループして再生します。デフォルトはfalseです |
volume | × | 音量を指定できます 0〜100 の間で指定してください。0を指定すると無音になります |
x | × | 効果音が鳴る位置を指定します。VR空間のX座標を指定してください |
y | × | 効果音が鳴る位置を指定します。VR空間のY座標を指定してください |
z | × | 効果音が鳴る位置を指定します。VR空間のZ座標を指定してください |
layer | × | 配置するレイヤを指定します。space(VR空間に配置)eye(常に目線に追従する) を選択します。デフォルトはspaceです。eyeを指定すると頭の向きに影響されず、効果音を特定の方向から鳴らすことができます |
[audio_new id="music1" storage="sample.mp3"]
[playse id="music1" x=2 y=2 z=1.2 ]
VR空間で一時的に視界を遮ります。
他の空間へ移動するときやVR空間を生成している間はマスクをかけておくと便利です。
再度視界を開放する場合は[mask_off]タグを使用してください
パラメータ | 必須 | 解説 |
---|---|---|
time | × | マスク表示にかける時間をミリ秒で指定します。デフォルトは1000。 |
wait | × | trueかfalseを指定します。trueを指定するとマスク完了を待ちます。デフォルトはtrue |
color | × | 視界を遮るときに色を指定できます。0x000000形式で指定してください。 |
;マスクをかけて視界を遮ります
[mask time=3000 ]
;ここで色々な処理。VR空間の構築など
;マスクを外して再開
[mask_off time=2000 ]
expで示された式を評価します。変数への値の代入などに使用されます。
exp には任意の TJS(JS) 式を指定できるので、TJS(JS) として有効な式であれば 何でも評価できます。
パラメータ | 必須 | 解説 |
---|---|---|
exp | ◯ | 評価するTJS式を指定します。 |
[eval exp="f.test=500"]
;↑ゲーム変数 test に数値を代入している
[eval exp="f.test2='文字列'"]
;↑ゲーム変数 test2 に文字列を代入している
[eval exp="sf.test=400"]
;↑システム変数 test に数値を代入している
[eval exp="f.test2=f.test*3"]
;↑ゲーム変数 test2 に ゲーム変数 test の 3 倍の数値を代入している
システムが管理するスタックを消去します。
スタックとはゲームを進める中で Call、マクロ呼び出し、 if 文などを通過した時に
呼び出し元に帰ってくるために保持するメモリ領域です。
通常のノベルゲームであれば、特に問題はおきませんが
Call の途中でジャンプ。if文の中でジャンプ
などを繰り返した場合、回収されないスタックが溜まっていきます。
これらは、セーブデータの肥大化などを引き起こす場合ばあるので
戻るべきスタックが無い場面でこのタグを配置しておくことをオススメします。
きりの良い場所などです。(タイトル 章の始まり)
パラメータ | 必須 | 解説 |
---|---|---|
stack | × | call if macro のいづれかを指定できます。特定のスタックのみ削除することができます。指定しなければ全てのスタックを削除します。 |
式を評価し、その結果が true ( または 0 以外 ) ならば、 elsif・else・endif のいずれかまでにある文章やタグを実行し、 そうでない場合は無視します。
パラメータ | 必須 | 解説 |
---|---|---|
exp | ◯ | 評価する TJS 式を指定します。この式の結果が false ( または 0 な らば、elsif・else・endif タグまでの文章やタグが無視されます。 |
; 例1
[if exp="false"]
ここは表示されない
[else]
ここは表示される
[endif]
; 例2
[if exp="false"]
ここは表示されない
[elsif exp="false"]
ここは表示されない
[else]
ここは表示される
[endif]
; 例3
[if exp="false"]
ここは表示されない
[elsif exp="true"]
ここは表示される
[else]
ここは表示されない
[endif]
; 例4
[if exp="true"]
ここは表示される
[elsif exp="true"]
ここは表示されない
[else]
ここは表示されない
[endif]
マクロ記述を開始します。新しいタグを定義することが出来ます。
このタグから、endmacro タグまでにある文章やタグは、 name 属性で指定されたタグとして登録され、以後使用できるようになります。
マクロ中に書かれたタグには、特別に % を頭につけた属性の値を指定することができます。 % 以降にはマクロに渡された属性名を指定します。すると、マクロに渡された属性の値をその属性の値とすることができます。このとき、| を使って属性の省略値を指定することもできます ( 下の例参照 )。 属性名には小文字を用いてください。
また、属性の代わりに * を書くと、マクロに渡されたすべての属性をそのタグに渡すこと ができます。
パラメータ | 必須 | 解説 |
---|---|---|
name | ◯ | マクロの名前を指定してください。以後この名前で新しいタグが定義され呼び出せるようになります。 |
[macro name="newtag"][font color=0xff0000]新しいタグです[resetfont][endmacro]
[newtag]
[macro name="colortag"][font color=%iro]iro 属性付きのタグ[resetfont][endmacro]
[colortag iro=0x332211]
; ↑ colotag に渡された iro 属性の値が font タグの color 属性に渡される
[macro name="transwait"][trans *][wt][endmacro]
; ↑ この transwait に渡されたすべての属性が trans タグに渡される
[macro name="colortag"][font color=%iro|0xff0000]iro 属性付きで省略値をしていしたタグ[resetfont][endmacro]
; ↑ % の属性の値では、 | のあとに続けて、その属性の省略値を指定することができます
外部プラグインを読み込むことができます。
プラグインはdata/others/plugin/ フォルダに配置します。
また、pluginタグは引数を自由に渡すことができます。
例えば
[plugin name="original1" font_color="black" myname="シケモク" ]
のようにすると、プラグイン先のinit.ks 内で
mp.font_color
mp.myname
のような形で引数を利用できます。
これを &mp.font_color のように使うことで、カスタマイズ可能なプラグインが作れます。
ただ、マクロで使用可能だった%font_color のような形の使用はできませんので注意。
パラメータ | 必須 | 解説 |
---|---|---|
name | ◯ | data/othres/plugin以下の配置したフォルダ名(プラグイン名)を指定する |
storage | × | 最初に読み込むシナリオファイルを変更できます。デフォルトはinit.ks です。 |
;テーマ変更
[plugin name="original1" ]
;自由に引数を渡すことも可能
[plugin name="original1" font_color="black" arg2="aaaaaa" ]
VR空間にイメージを表示します。
パラメータ | 必須 | 解説 |
---|---|---|
id | ◯ | [image_new]タグで指定したidのファイルをVR空間に表示します。name |
layer | × | 配置するレイヤを指定します。space(VR空間に配置)eye(常に目線に追従する) を選択します。デフォルトはspaceです |
x | × | VR空間のX座標を指定してください |
y | × | VR空間のY座標を指定してください |
z | × | VR空間のZ座標を指定してください。数値が大きくなると遠くに配置されます |
xr | × | 物体のX軸角度を指定できます。0〜360度で指定します |
yr | × | 物体のY軸角度を指定できます。0〜360度で指定します |
zr | × | 物体のZ軸角度を指定できます。0〜360度で指定します |
time | × | イメージの表示にかける時間を指定できます。ミリ秒で指定してください。デフォルトは1000 |
wait | × | trueかfalseを指定。イメージ表示の完了を待つか否かを設定できます。デフォルトはtrue |
scale | × | イメージの表示倍率を設定できます。例えば2を指定すると2倍の大きさ。0.5を指定すると半分の大きさでVR空間に表示されます。デフォルトは1 |
;イメージを定義
[image_new id="image1" storage="room.png" ]
;VR空間にイメージを表示
[image id="image1" storage="room.png" ]
VR空間表示したオブジェクトを非表示にします。
イメージ、ムービー、全天球写真などに対応します。
パラメータ | 必須 | 解説 |
---|---|---|
name | ◯ | 非表示にするオブジェクトのnameを指定してください。 |
time | × | 非表示にかける時間を指定できます。ミリ秒で指定してください。デフォルトは1000 |
wait | × | trueかfalseを指定。タグの完了を待つか否かを設定できます。デフォルトはtrue |
;イメージを定義
[image_new id="image1" storage="room.png" ]
;VR空間にイメージを表示
[image name="image1" id="image1" x=10 y=3 z=5 ]
;VR空間のイメージを非表示
[free name="image1" time=3000 ]
VR空間表示したオブジェクトをすべて非表示にします。
イメージ、ムービー、全天球写真などに対応します。
パラメータ | 必須 | 解説 |
---|---|---|
layer | × | 特定のレイヤのみをクリアすることができます。space か eye を指定します。allを指定すると全て消えます。デフォルトはall |
;イメージを定義
[image_new id="image1" storage="room.png" ]
;VR空間にイメージを表示
[image name="image1" id="image1" x=10 y=3 z=5 ]
;VR空間のイメージを非表示
[freeall ]
全天球イメージ表示を表示します。
360°見渡す場合は[frame_hide]でフレームを解除してください。
パラメータ | 必須 | 解説 |
---|---|---|
id | ◯ | [image_new]で指定した全天球画像のidを指定してください |
name | × | イメージにnameを付与することができます。このnameは削除するときに使用します。指定しない場合はid名が適応される |
time | × | イメージの非表示にかける時間を指定できます。ミリ秒で指定してください。デフォルトは1000 |
wait | × | trueかfalseを指定。タグの完了を待つか否かを設定できます。デフォルトはtruexr |
yr | × | 画像のY軸角度を指定できます。0〜360度で指定します |
zr | × | 画像のZ軸角度を指定できます。0〜360度で指定します |
[image_new id="image1" storage="room.jpg" ]
;VR空間のイメージを非表示
[image360 name="image1" ]
VR空間で使用するムービーを定義します。
パラメータ | 必須 | 解説 |
---|---|---|
id | ◯ | ムービー付与するidを指定します。実際にVR空間に表示するときに使用します |
folder | × | ムービーファイルを配置するフォルダを指定できます。デフォルトはvideoフォルダです |
layer | × | 配置するレイヤを指定します。space(VR空間に配置)eye(常に目線に追従する) を選択します。デフォルトはspaceです |
storage | ◯ | ロードする動画ファイルを指定します。ファイルはvideoフォルダに配置してください。推奨はmp4形式となります |
preload | × | trueかfalseを指定。trueを事前に動画を読み込んでおきます |
loop | × | trueかfalseを指定します。trueを指定するとムービーをループして再生します |
[movie_new id="movie1" storage="sample.mp4" ]
VR空間にムービーを表示します。
パラメータ | 必須 | 解説 |
---|---|---|
id | × | [movie_new]タグで指定したidのファイルをVR空間に表示します。name |
x | × | VR空間のX座標を指定してください |
y | × | VR空間のY座標を指定してください |
z | × | VR空間のZ座標を指定してください。0が視点位置。数値が大きくなると遠くに配置されます |
width | × | ムービーの横幅を指定できます。デフォルトは6 |
height | × | ムービーの縦幅を指定できます。デフォルトは4 |
;動画を定義
[movie_new id="video1" storage="sample.mp4" ]
;VR空間にイメージを表示
[movie id="video1" x=10 y=10 z=10 width=600 height=400 ]
VR空間で使用する3Dモデルを定義します。
ファイル形式はlgtfに対応します。
パラメータ | 必須 | 解説 |
---|---|---|
id | ◯ | 3Dオブジェクトに付与するidを指定します。実際にVR空間にイメージを表示するときに使用します |
storage | ◯ | ロードする3Dオブジェクトファイルを指定します。ファイルはmodelフォルダに配置してください。lgtf形式に対応します |
folder | × | 好きなフォルダからlgtfファイルを選択できます。modelフォルダ以外に配置した場合はここにフォルダ名を指定してください |
[model_new id="miku" storage="fileobj.lgtf" ]
VR空間にイメージを表示します。
パラメータ | 必須 | 解説 |
---|---|---|
id | ◯ | [image_new]タグで指定したidのファイルをVR空間に表示します。name |
layer | × | 配置するレイヤを指定します。space(VR空間に配置)eye(常に目線に追従する) を選択します。デフォルトはspaceです |
x | × | VR空間のX座標を指定してください |
y | × | VR空間のY座標を指定してください |
z | × | VR空間のZ座標を指定してください。0が視点位置。数値が大きくなると遠くに配置されます |
xr | × | 物体のX軸角度を指定できます。0〜360度で指定します |
yr | × | 物体のY軸角度を指定できます。0〜360度で指定します |
zr | × | 物体のZ軸角度を指定できます。0〜360度で指定します |
wait | × | trueかfalseを指定。モデルの表示の完了を待つか否かを設定できます。デフォルトはtrue |
scale | × | モデルの表示倍率を設定できます。例えば2を指定すると2倍の大きさ。0.5を指定すると半分の大きさでVR空間に表示されます。デフォルトは1 |
;イメージを定義
[model_new id="chara" storage="sample.gltf" ]
;VR空間にイメージを表示
[model id="chara" x=1 y=0 z=4 ]
VR空間にグラフィカルボタンを表示します。
グラフィックボタン表示中は強制的にシナリオ進行が停止しますので、必ずジャンプ先を指定して下さい
ここから、移動した場合はコールスタックに残りません。つまり、リターンできないのでご注意ください
注意→fixにtrueを指定した場合はコールスタックに残ります。コール先からリターンするまで全てのボタンは有効にならないのでご注意ください
ジャンプ後に必ず[free]タグでボタンを非表示にする必要があります。
パラメータ | 必須 | 解説 |
---|---|---|
id | ◯ | ボタンにする画像を指定します。ファイルはプロジェクトフォルダのimageフォルダに入れて下さい |
name | × | ボタンにnameを指定できます。animタグなどからこの名前でアニメーションさせることができます。 |
layer | × | 配置するレイヤを指定します。space(VR空間に配置)eye(常に目線に追従する) を選択します。デフォルトはspaceです |
storage | × | ジャンプ先のシナリオファイルを指定します。省略すると、現在 のシナリオファイル内であると見なされます。 |
target | × | ジャンプ先のラベルを指定します。省略すると、ファイルの先頭から実行されます。 |
x | × | ボタンのx座標を指定します |
y | × | ボタンのy座標を指定します |
z | × | ボタンのz座標を指定します |
xr | × | 物体のX軸角度を指定できます。0〜360度で指定します |
yr | × | 物体のY軸角度を指定できます。0〜360度で指定します |
zr | × | 物体のZ軸角度を指定できます。0〜360度で指定します |
clickse | × | クリックしたときに再生するオーディオリソースIDを指定できます |
enterse | × | フォーカスされたときに再生するオーディオリソースIDを指定できます |
leavese | × | フォーカスを外れたときに再生するオーディオリソースIDを指定できます |
time | × | ボタンが表示されるのにかかる時間を指定できます。ミリ秒で指定してください。 |
exp | × | ボタンがクリックされた時に実行されるJSを指定できます。 |
preexp | × | "タグが評価された時点で変数 preexpに値を格納します。つまり、ボタンがクリックされた時に、expでpreexpという変数が利用できます。" |
trigger | × | ボタンが発火するイベントを指定できます。hand(コントローラーによるクリック)。eye(視線が指定時間重なったら発火。時間はeye_timeパラメータで指定できます)all(すべてのイベントに反応)デフォルトはhandです。 |
[button id="oda.png" target=*oda]
[locate x=300 y=100]
[button id="toyo.png" target=*toyo]
標準メッセージの各種設定を行えます。
パラメータ | 必須 | 解説 |
---|---|---|
fix | × | メッセージの表示方法を設定できます。trueを指定すると目線に追従します。falseを指定すると空間上に固定されます |
x | × | メッセージを配置するx座標を指定します。 |
y | × | メッセージを配置するy座標を指定します。 |
z | × | メッセージを配置するz座標を指定します。デフォルトは2です。0だとVR空間で閲覧できませんのでご注意ください |
time | × | メッセージの表示にかかる時間を設定できます。デフォルトは600ミリ秒 |
指定できるパラメータはありません |
[msgopt fix=true x=0 y=-1 z=2 ]