UI関連コマンド(Ver12.8.0)

Last-modified: 2021-09-18 (土) 18:17:42


ボタン(button)

ボタン btn1 a.png b.png c.png 200 300 40 透明無視 カメラ付着 ゲーム終了
ボタン0 btn2 200 300 40 透明無視 カメラ付着
  • Imagesフォルダ内にある画像を素材として、特定のコマンドを持つボタンを作成します。
    コマンドを持たせないこともできます。
  • 設定項目「ボタンクリック時イメージ」は、Ver8.0.0以降においてはコマンド「ハイライト条件」で設定した条件を満たす場合に表示を継続させることができます(項目参照:ハイライト条件)。
  • ボタン0……透明度0の状態で設定します。インや透明度コマンドで表示することができますが、透明度0でもボタンはコマンドを適用してしまうので注意が必要です。
  • 設定項目「透明無視」は、素材の透明度0の領域をボタン反応範囲から除外します。
    これにおける「透明度0」は「見た目上の透明度0の領域」ではなく「素材上の透明度0の領域(アルファ値が0)」を指します。
    したがって、コマンド「ボタン0」「透明度」等で個体全体の透明度が0になっても個体全体がボタン反応範囲から除外されるわけではなく、素材上の透明度が0より大きい領域はボタン反応範囲として機能します
設定項目記述の種類説明
【必須】名前命名ボタンに設定する個体名
(※1)ボタン通常イメージファイル名
または
個体名
通常時に使用するボタン画像ファイル名
または
登録済みアニメ名(※2)
(※1)ボタンタッチ時イメージファイル名
または
個体名
カーソルを当てた時に使用するボタン画像ファイル名
または
登録済みアニメ名(※2)
(※1)ボタンクリック時イメージファイル名
または
個体名
クリック時に使用するボタン画像ファイル名
または
登録済みアニメ名(※2)
【必須】x座標数値素材左上の頂点のx座標(左右方向の座標)
【必須】y座標数値素材左上の頂点のy座標(上下方向の座標)
【必須】表示レイヤー数値素材の位置するレイヤー
透明無視設定項目の語句
(透明無視)
素材の透明度0の領域をボタン反応領域から除外
カメラオプション※3カメラに対する反映方法
Light.vnコマンドコマンドクリック時に適用するコマンド

※1……当該3項目はコマンド「タッチ素材設定」の宣言以降において省略することができます。
※2……「登録済みアニメ名」に関しては項目参照:アニメ登録
※3……「カメラオプション」に関しては項目参照:カメラオプションについて

ボタン文字(btnText)

ボタン文字 ita Harenosora.otf 24 "設定画面へ"
ボタン文字 ita2 Harenosora.otf 24 -10 -2 "設定画面へ"
  • 指定したボタンにテキストを表示します。横書きの一行表示に限定されています。
  • ボタンへの文字使用を簡略化するためのコマンドです。
  • ボタン文字には文字関連のコマンドを適用することができます
    Ver6.2.0からVer7.1.0までは対象名にボタンの個体名を、Ver7.6.0以降はボタン名の末尾に「_text」を付与したものを設定します。
  • 初期設定ではフォントに文字陰を適用し、ボールド体を使用しません。
  • Ver10.0.0から、ボタン中央に対する文字位置の設定項目が追加されました。
    設定しなければ文字はボタン中央に整列します。変更する場合は、左右方向(x方向)は右、上下方向(y方向)は下を正として移動量を指定します。
設定項目記述の種類説明
【必須】ボタン名前個体名テキストを表示するボタンの個体名
【必須】フォント名ファイル名テキストに使用するフォント
【必須】フォント大きさ数値文字の大きさ(単位:px)
相対x座標数値ボタン中心を基準とする文字列中心点のx座標(左右方向の座標)
相対y座標数値ボタン中心を基準とする文字列中心点のy座標(上下方向の座標)
【必須】テキストテキスト表示させるテキスト

ボタングループ化(setButtonGroup)

ボタングループ化 ui_menu_
  • 指定した文字列を個体名の先頭に持つボタン個体をグループ化します。
    グループ化されたボタン個体は、グループ内の個体のひとつが選択された時点で他の個体の選択を禁止します。
    分岐の選択肢において、他の選択肢を選んで意図しないジャンプ先となってしまうことを避ける等の使い方があります。
設定項目記述の種類説明
【必須】グループ接頭辞個体名(一部)グループ化するボタン個体が先頭に持つ文字列

反応範囲(touchArea)

反応範囲 btn1 50 50 400 400
  • ボタン自身の反応範囲領域を設定するコマンドです(Ver7.1.0以前においては動作しません)。
    12.0.0以前におけるコマンド名は「ボタン反応範囲」です。
  • 反応範囲の設定は、対象となるボタンの左上座標からの相対座標です
    たとえば、大きさが500×100のボタンが座標(100,100)に設定されている場合において、コマンド「ボタン反応範囲 (ボタン名) 50 10 400 80」を設定します。
    このとき、反応範囲として指定される領域は、左右方向が150から550まで、上下方向が110から190までとなります。
  • 対象となるボタンの本来の領域よりも大きな領域を反応範囲とすることも可能です。
設定項目記述の種類説明
【必須】ボタン名前個体名反応範囲を設定するボタンの個体名
【必須】相対x座標数値反応範囲の左上の頂点の相対x座標(左右方向の座標)
【必須】相対y座標数値反応範囲の左上の頂点の相対y座標(上下方向の座標)
【必須】数値反応範囲の左右方向の大きさ
【必須】高さ数値反応範囲の上下方向の大きさ

画面反応範囲(touchAreaScreen)

画面反応範囲 btn1 500 200 400 400
  • ボタンの反応する範囲領域を設定するコマンドです。
    設定した範囲以外の領域にある、指定したボタンの反応範囲は無効となります
    マスクと併用することで、スクロールメニュー等の実装が可能です。
  • 反応範囲は絶対座標で指定します。
    たとえば、大きさが500×100のボタンが座標(100,100)に設定されている場合において、コマンド「ボタン反応範囲 (ボタン名) 50 10 400 80」を設定します。
    このとき、反応範囲として指定される領域は、左右方向が50から450まで、上下方向が10から90までとなります。
  • 対象となるボタンの本来の領域よりも大きな領域を反応範囲とすることも可能です。
設定項目記述の種類説明
【必須】ボタン名前個体名反応範囲を設定するボタンの個体名
【必須】x座標数値反応範囲の左上の頂点のx座標(左右方向の座標)
【必須】y座標数値反応範囲の左上の頂点のy座標(上下方向の座標)
【必須】数値反応範囲の左右方向の大きさ
【必須】高さ数値反応範囲の上下方向の大きさ

反応透明度(touchAlpha)

反応透明度 btn1 50
  • ボタンの全体透明度が指定した値未満である時に反応しないように設定します。
  • 素材画像上の透明度ではなく、Light.vn上の個体としての透明度が検出されます。
    したがって、画像素材に透明領域(透明度0)があったとしても、個体の透明度を変更していなければ反応してしまいます。
    上記の例では、ボタン個体「btn1」の透明度をコマンド「透明度」等で50未満に変更した場合には反応しなくなります。
  • 透明度の変化は連続的なものでも検出されます。
    したがって、コマンド「イン」「アウト」によるフェードの途中でも検知下限を下回れば反応しなくなります。
設定項目記述の種類説明
【必須】ボタン名前個体名検知透明度を設定するボタンの個体名
【必須】検知透明度数値反応処理を検知する下限の透明度

ハイライト条件(highlight_if)

ハイライト条件 btn1 "vn_sysTextReadMethod == 1"
  • ボタンの表示画像を「UI活性時画像(UIタッチ時画像)」で固定する条件を設定します。
    条件式が満たされている場合には表示画像が固定され、満たされていない場合には表示画像が元の設定に従うようになります。
    • たとえば、上記の例において(vn_sysTextReadMethod = 1)であれば、「btn1」はカーソルの接触に関係なく「UI活性時画像(UIタッチ時画像)」が表示されます。
      また、(vn_sysTextReadMethod = 0)であれば、「btn1」は通常どおりにカーソルの接触に応じて表示画像が変更されます。
  • Ver8.0.0未満においては、ボタンに特定のコマンド(「文字進行」等)を設定している場合にコマンドの適用状態に応じて自動的に表示画像を固定していましたが、Ver8.0.0において特別に設定することが必要となりました。
  • 条件式はテキストとして記述するため、先頭と末尾に「"」を必要とします。式であっても「()」で囲むわけではありません。
設定項目記述の種類説明
【必須】ボタン名前個体名カーソルに反応するボタンの名前
【必須】活性条件テキストボタンの表示画像を固定する条件式

ボタンタッチ時(onBtnTouch)

ボタンタッチ時 btn1 スクリプト system.txt showbtn
  • ボタンにカーソルを合わせた時に適用するコマンドを設定します。
    ボタンの表示関連での使用が多いようです。
設定項目記述の種類説明
【必須】ボタン名前個体名カーソルに反応するボタンの名前
【必須】タッチ時発動コマンドコマンドカーソルを合わせた時に適用するコマンド

ボタン未タッチ時(onBtnNotTouch)

ボタン未タッチ時 btn1 スクリプト system.txt hidebtn
  • ボタンからカーソルを離す時に適用するコマンドを設定します。
  • ボタンにカーソルを合わせていない時に常時適用されるコマンドではありません
    必ず「ボタンにカーソルを合わせた後で、ボタンからカーソルを離す時」のみにコマンドが適用されます。
    ボタンタッチ時」によって適用されたコマンドを初期化する等の使い方ができます。
設定項目記述の種類説明
【必須】ボタン名前個体名カーソル外に反応するボタンの名前
【必須】未タッチ時発動コマンドコマンドカーソル外の状態において適用するコマンド

タッチ素材設定(touchableRes)

タッチ素材設定 a.png b.png c.png touchbtn.ogg clickbtn.ogg d.png e.png
  • UI(ボタンおよびトラックバー)に使用する画像と効果音のファイルを事前に一括で設定します。
    再度の設定があるまで、このコマンド以降に設定されるUIには、このコマンドで指定した素材が用いられます。
  • 画像素材はいずれも同じサイズのものを設定する必要があります。
  • UIに対する効果音の設定はこのコマンド限定の機能です(Ver12.0.0現在)。
    ただしコマンド「ボタンタッチ時」でタッチ時の効果音を設定することは可能です。
    • 他コマンドにおいて、各ボタンに設定された効果音を対象に指定することができます。
      UIタッチ時音を対象に指定する場合には、対象名に「vn_」+「ボタン個体名」+「_touchedSound」を記述します。
      UIクリック時音を対象に指定する場合には、対象名に「vn_」+「ボタン個体名」+「_clickedSound」を記述します。
      たとえば、前者は「vn_btn1_touchedSound」、後者は「vn_btn1_clickedSound」と記述します。
  • 「UI活性時画像」「UI非活性時画像」の設定はこのコマンド限定の機能です(Ver12.0.0現在)。
    「UI活性時画像」は、コマンド「ハイライト条件」で指定した条件に合致する場合における画像素材を指定します。未指定の場合には「UIクリック時画像」が用いられます。
    「UI非活性時画像」は、Ver12.0.0現在では未実装項目となっているため、指定は不要です。
  • 設定項目「UIタッチ時音」「UIクリック時音」に「""」を記述することによって、タッチ時やクリック時の効果音の設定を省略できます(Ver5.7.0以前は非対応)
設定項目記述の種類説明
【必須】UI通常画像ファイル名
または
個体名
通常時に使用するUI画像ファイル名
または
登録済みアニメ名(※1)
【必須】UIタッチ時画像ファイル名
または
個体名
カーソルを当てた時に使用するUI画像ファイル名
または
登録済みアニメ名(※1)
【必須】UIクリック時画像ファイル名
または
個体名
クリック時やコマンド適用時に使用するUI画像ファイル名
または
登録済みアニメ名(※1)
UIタッチ時音ファイル名カーソルを当てた時の効果音のファイル名
UIクリック時音ファイル名UIをクリックした時の効果音のファイル名
UI活性時画像ファイル名
または
個体名
ハイライト条件合致時に使用するUI画像ファイル名
または
登録済みアニメ名(※1)
(※2)UI非活性時画像ファイル名
または
個体名
(※2)

※1……「登録済みアニメ名」に関しては項目参照:アニメ登録
※2……Ver12.0.0現在では機能しないため、指定は不要です。

ボタン単独活性化(btnsOnlyActive)

ボタン単独活性化 sysbtn.*
  • 特定のボタンのみを機能させます。対象の複数指定には正規表現を用います(項目参照:正規表現に触れてみよう)。
    例スクリプト文においては、先頭に「sysbtn」を持つすべてのボタンが選択可能になり、それ以外のボタンは選択できなくなります。
  • コンフィグ画面などの特定の機能を持つ画面において、表示するボタンの個体名の先頭に共通する文字列を決めて使っておけば、このコマンドの適用効率が上がります
  • このコマンドは一段階の画面遷移に有効ですが、二段階以上の画面遷移では意図しない動作になる可能性があります。このコマンドは簡易版と捉えて、可能ならばコマンド「ボタン活性スタック」を用いるようにしましょう。
    • このコマンドが適用されると、まずボタンの選択可能条件を初期化し(コマンド「ボタン活性スタック」における「clear」)、次にボタンの選択可能条件を新規に設定します(コマンド「ボタン活性スタック」における「push」)。
      したがって、このコマンドを適用するたびに選択可能条件は追加ではなく更新されることになり、二段階以降は前段階の選択可能条件を再使用することができなくなります。
設定項目記述の種類説明
【必須】対象ボタン名個体名選択可能にするボタンの個体名

ボタン全活性化(btnsAllActive)

ボタン全活性化
  • コマンド適用時点において存在しているすべてのボタンを選択できるようにします。
    コマンド「ボタン単独活性化」の効果を初期化するという用い方もできます。
  • コマンド「ボタン活性スタック」の「clear」と同様の処理が行われます。

ボタン活性スタック(btnsActiveStack)

ボタン活性スタック push c_.*
ボタン活性スタック pop
  • 選択可能なボタンに関する条件の変更を行います。
    「条件を積み上げる」「条件を上書きする」「条件を削除する」「条件を初期化する」を組み合わせ、積み上がった条件のうち、最も上にあるものを適用します
  • 変更内容として設定するのは以下のとおりです。
    • 「push」
      新たな条件を積み上げます。条件には選択可能にするボタンの個体名を指定します。対象の複数指定には正規表現を用います(項目参照:正規表現に触れてみよう)。
      コマンド設定以降は、指定された条件に合致するボタンのみが選択可能になります。
    • 「overwrite」
      最上位の条件を上書きします。条件には選択可能にするボタンの個体名を指定します。対象の複数指定には正規表現を用います(項目参照:正規表現に触れてみよう)。
      コマンド設定以降は、上書きされた条件に合致するボタンのみが選択可能になります。
    • 「pop」
      最上位の条件を削除します。
      コマンド設定以降は、削除した条件の直下に積まれていた条件が最上位となり、その条件に合致するボタンのみが選択可能となります。
    • 「clear」
      条件を初期化し、積み上がりを解消します。
      コマンド適用以降は、すべてのボタンが選択可能になります。
設定項目記述の種類説明
【必須】変更内容(※1)選択可能にするボタンの個体名の先頭文字列
(※2)対象ボタン名個体名選択可能条件に追加・上書きするボタンの個体名

※1 記述に関しては上記を参照
※2 「push」「overwrite」のみ必須

ボタン処理順位(btnFilterRange)

ボタン処理順位 0
  • 領域の重なるボタンの存在時において、重複領域がクリックされた際の処理を設定します。デフォルトは「1」です。
    • 「ボタン処理順位 0」……クリック座標に領域を持つすべてのボタンが選択されます。
    • 「ボタン処理順位 1」……レイヤーの値が最も大きいボタンのみ選択されます。
設定項目記述の種類説明
【必須】0
または
1
数値ボタンの重複領域のクリックに対する処理

トラックバー(trackbar)

トラックバー c_textspeed 300 100 170 横 500 vn_sysTextSpeed 10 800 trackball.png trackball_on.png trackball_click.png カメラ付着
  • 変数操作を行うことができるトラックバーを設定します。
  • このコマンドでは、トラックバーは透明の領域として設定され、トラックボールのみが表示されます
    したがって、コマンド「絵」などを用いてトラックバー自体の素材を設定しておく必要があります。
  • 変数には、コマンド「変数」で設定したものの他に、特定のシステム変数を用いることができます(項目参照:変数)。
  • 設定項目「調整完了後実行コマンド」は、トラックバーによる変数操作の完了後にコマンドを適用するよう指定します。
    調整完了の効果音や設定調整の実演等に用いることが想定されています。
設定項目記述の種類説明
【必須】トラックバー個体名命名トラックバーに設定する個体名
(※1)トラックボール通常イメージファイル名
または
個体名
通常時に使用するトラックボール画像ファイル名
または
登録済みアニメ名(※2)
(※1)トラックボールタッチ時イメージファイル名
または
個体名
カーソルを当てた時に使用するトラックボール画像ファイル名
または
登録済みアニメ名(※2)
(※1)トラックボールクリック時イメージファイル名
または
個体名
クリック時に使用するトラックボール画像ファイル名
または
登録済みアニメ名(※2)
【必須】x座標数値トラックバー領域の左上頂点のx座標(左右方向の座標)
【必須】y座標数値トラックバー領域の左上頂点のy座標(上下方向の座標)
【必須】表示レイヤー数値トラックバーの位置するレイヤー
【必須】
または
設定項目の語句
(縦・横)
トラックバーの方向
【必須】長さ数値トラックバーの長さ
【必須】変数名個体名操作対象となる変数の個体名
【必須】左側・上方変数値数値左端または上端に設定する変数値
【必須】右側・下方変数値数値右端または下端に設定する変数値
カメラオプション※3カメラに対する反映方法
調整完了後実行コマンドコマンドトラックバーによる変数操作の完了後に適用するコマンド

※1……当該3項目はコマンド「タッチ素材設定」の宣言以降において省略することができます。
※2……「登録済みアニメ名」に関しては項目参照:アニメ登録
※3……「カメラオプション」に関しては項目参照:カメラオプションについて