#freeze
TITLE:LIGHT.VN関数(Ver17.7.3)
#contents
~
*LIGHT.VN関数とは[#about]
Ver12.4.0から、エンジンの提供する関数(以降「LVN関数」と呼ぶことにします)が追加されました。
従来もコマンド「スクリプト」でユーザーが設定する関数(スクリプト関数)はありました(項目参照:[[関数>app#app06]])。
LVN関数も引数を渡す点では共通していますが、以下のような特徴があります。
-スクリプトの任意の位置に記述できます。
-基本的には設定項目で用います。
-引数を渡すと、戻り値と呼ばれる''ひとつの結果(値、文字列、真偽)''を返します。
**使い方[#how2use]
移動 obj01 (lvRandom(50, 100)) 150 500
各種コマンドの''設定項目への代入値''として記述するのが、LVN関数の主な用途です。
設定項目に関数名を括弧で囲んで記述し、直後の括弧内に引数を記述します。
-括弧で囲むことで変数の代入と同様の働きをします(項目参照:[[代入>app#app02]])。
したがって、戻り値が数値ならばその値がそのまま代入され、文字列ならば「"」で囲んだものが代入されます。
また、波括弧で二重に囲めば、数値と文字列のどちらもそのまま代入されるほか、テキストへの代入が可能になります。
-''複数の引数を記述する際には、引数の末尾に「,」と半角スペースを加えます''。
-''引数に文字列を用いる場合には、設定項目のテキストと同様に「"」で囲んで記述します''。
囲まない場合にはその文字列が変数名として扱われるため、エラーの原因になります。
ただし、''セーブスロットを指定する場合には「"」で囲まない文字列を記述します''。
-引数には変数を用いることができます。
変数名を記述すれば、その箇所の引数に変数値が代入されます。
ただし、''引数の型と変数の型とが一致している必要があります''。
~
///////////////////////////////////////////////////////////////////////////////////////////////
*関数紹介[#funcs]
**lvRandom[#lvRandom]
lvRandom(0, 20)
-引数:数値(最小値)、数値(最大値)
戻り値:数値
-ひとつめの数値を最小値、ふたつめの数値を最大値とする範囲の乱数を返します。
**lvMin[#lvMin]
lvMin(7, 20, 16, 1)
-引数:数値(複数個)
戻り値:数値
-引数の数値のうち、最も小さい値を返します。
上記の例では、「1」が戻り値となります。
**lvMax[#lvMax]
lvMax(7, 20, 16, 1)
-引数:数値(複数個)
戻り値:数値
-引数の数値のうち、最も大きい値を返します。
上記の例では、「20」が戻り値となります。
**lvRandomName[#lvRandomName]
lvRandomName("lady_")
-引数:文字列(個体名接頭辞)
戻り値:文字列
-指定した文字列を接頭辞に持つ個体名を生成します。
生成される個体名は存在する個体名と重複しないものになります。
**lvExistsObj[#lvExistsObj]
lvExistsObj("ch15")
-引数:文字列(個体名)
戻り値:真偽
-指定した文字列を個体名に持つ個体が存在していれば「true」、存在しなければ「false」を返します。
**lvObjInfo[#lvObjInfo]
lvObjInfo("ch15")
-引数:文字列(個体名)
戻り値:文字列(XML形式)
-指定した文字列を個体名に持つ個体が存在していれば、各種情報をXML形式で返します。
エンジン側の内部処理に関する情報であるため、用途は独自のデバッグモード等に限られると思われます。
**lvGetObjVar[#lvGetObjVar]
lvGetObjVar("ch15", "state")
-引数:文字列(個体名)、文字列(個体変数名)
戻り値:文字列
-指定した文字列を個体名に持つ個体が存在し、かつ指定した変数名の個体変数が当該個体に従属していれば、変数値を文字列で返します。
上記の論理積が不正であればエラーとなります。
**lvExistsObjVar[#lvExistsObjVar]
lvExistsObjVar("ch15", "state")
-引数:文字列(個体名)、文字列(個体変数名)
戻り値:文字列
-指定した文字列を個体名に持つ個体が存在し、かつ指定した変数名の個体変数が当該個体に従属していれば「true」、存在しなければ「false」を返します。
**lvTimeNow[#lvTimeNow]
lvTimeNow("%y-%m-%d")
-引数:文字列(時間形式)
戻り値:文字列
-文字列の記述が指定する日時形式の文字列を、その瞬間の日時の数値を込めて文字列で返します。
日時形式の参考:[[https://en.cppreference.com/w/c/chrono/strftime>https://en.cppreference.com/w/c/chrono/strftime]]
--年・月・日は「%y」・「%m」・「%d」、時・分・秒は「%H」・「%M」・「%S」と記述します。
**lvSubstring[#lvSubstring]
lvSubstring("忙しいいそがしい", 0, 3)
-引数:文字列、数値(始点文字位置)、数値(文字数)
戻り値:文字列
-個々の文字に''左端を0とする番号''を割り振って、指定した番号から指定した個数の文字を抜き出して新たな文字列として返します。
上記の例では、「"忙しい"」が戻り値となります。
**lvRemoveSuffix[#lvRemoveSuffix]
lvRemoveSuffix("おおいそのいそいそしたひと", 6)
lvRemoveSuffix("八百万体", "体")
-引数:文字列、数値(削除文字数)・文字列(削除対象)
戻り値:文字列
-指定した文字数または文字列を末尾から削除してできた新たな文字列を返します。
上記の例の1つめでは、「"おおいそのいそ"」が戻り値となります。
例の2つめでは、「"八百万"」が戻り値となります。
**lvStringRemoveFormat[#lvStringRemoveFormat]
lvRemoveSuffix("<ruby おおいそ>大磯</>")
-引数:文字列
戻り値:文字列
-指定した文字列から文字装飾コマンドの記述を削除してできた新たな文字列を返します。
上記の例の1つめでは、「"大磯"」が戻り値となります。
**lvPositionCenter[#lvPositionCenter]
lvPositionCenter("theGame")
-引数:文字列(個体名)
戻り値:リスト変数(絶対x座標、絶対y座標、絶対r座標)
-指定した文字列を個体名に持つ個体の描画中心の座標をリスト変数で返します。
個体が存在しない、あるいは位置を持たない個体(音声等)である場合にはエラーとなります。
**lvPositionCenterXYZ[#lvPositionCenterXYZ]
lvPositionCenter("theGame")
-引数:文字列(個体名)
戻り値:リスト変数(絶対x座標、絶対y座標、絶対z座標)
-指定した文字列を個体名に持つ個体の描画中心の座標をリスト変数で返します。
個体が存在しない、あるいは位置を持たない個体(音声等)である場合にはエラーとなります。
**lvPositionCenterX[#lvPositionCenterX]
lvPositionCenterX("theGame")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体の描画中心のx座標(左右方向の座標)を返します。
個体が存在しない、あるいは位置を持たない個体(音声等)である場合にはエラーとなります。
**lvPositionCenterY[#lvPositionCenterY]
lvPositionCenterY("theGame")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体の描画中心のy座標(上下方向の座標)を返します。
個体が存在しない、あるいは位置を持たない個体(音声等)である場合にはエラーとなります。
**lvPositionCenterR[#lvPositionCenterR]
lvPositionCenterR("theGame")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体の描画中心のr座標(前後方向の座標)を返します。
個体が存在しない、あるいは位置を持たない個体(音声等)である場合にはエラーとなります。
**lvPositionCenterZ[#lvPositionCenterZ]
lvPositionCenterZ("theGame")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体の描画中心のz座標(前後方向の座標)を返します。
個体が存在しない、あるいは位置を持たない個体(音声等)である場合にはエラーとなります。
**lvPositionDeltaX[#lvPositionDeltaX]
lvPositionDeltaX("target01")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体の前フレームとのx座標(左右方向の座標)の差を返します。
個体が存在しない、あるいは位置を持たない個体(音声等)である場合にはエラーとなります。
**lvPositionDeltaY[#lvPositionDeltaY]
lvPositionDeltaY("target01")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体の前フレームとのY座標(上下方向の座標)の差を返します。
個体が存在しない、あるいは位置を持たない個体(音声等)である場合にはエラーとなります。
**lvRotationX[#lvRotationX]
lvRotationX("target01")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体のX軸回転角度を返します。
個体が存在しない、あるいは位置を持たない個体(音声等)である場合にはエラーとなります。
**lvRotationY[#lvRotationY]
lvRotationY("target01")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体のY軸回転角度を返します。
個体が存在しない、あるいは位置を持たない個体(音声等)である場合にはエラーとなります。
**lvRotationZ[#lvRotationZ]
lvRotationZ("target01")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体のZ軸回転角度を返します。
個体が存在しない、あるいは位置を持たない個体(音声等)である場合にはエラーとなります。
**lvTileX[#lvTileX]
lvTileX("target01")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体の位置するタイルのx番号(左右方向の番号)を返します。
個体が存在しない場合にはエラーとなります。
**lvTileY[#lvTileY]
lvTileY("target01")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体の位置するタイルのy番号(上下方向の番号)を返します。
個体が存在しない場合にはエラーとなります。
**lvSpeedX[#lvSpeedX]
lvSpeedX("theGame")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体のx速度(左右方向の速度)を返します。
個体が存在しない、あるいはタイル上に存在しない場合にはエラーとなります。
**lvSpeedY[#lvSpeedY]
lvSpeedY("theGame")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体のy速度(左右方向の速度)を返します。
個体が存在しない、あるいはタイル上に存在しない場合にはエラーとなります。
**lvSpeedZ[#lvSpeedZ]
lvSpeedZ("theGame")
-引数:文字列(個体名)
戻り値:数値
-指定した文字列を個体名に持つ個体のz速度(左右方向の速度)を返します。
個体が存在しない、あるいはタイル上に存在しない場合にはエラーとなります。
**lvObjTransformPoint[#lvObjTransformPoint]
lvObjTransformPoint("theGame", 0, 0, 5)
-引数:文字列(個体名)、数値(対象主観x座標)、数値(対象主観y座標)、数値(対象主観z座標)
戻り値:リスト変数(絶対x座標、絶対y座標、絶対z座標)
-指定した個体を原点とし、個体の向く方向をz軸とする座標系上の点を指定し、その点の絶対座標を返します。
個体が存在しない、あるいはタイル上に存在しない場合にはエラーとなります。
**lvObjTransformVector[#lvObjTransformVector]
lvObjTransformVector("theGame", 0, 0, 5)
-引数:文字列(個体名)、数値(対象主観x座標)、数値(対象主観y座標)、数値(対象主観z座標)
戻り値:リスト変数(絶対x座標、絶対y座標、絶対z座標)
-指定した個体を原点とし、個体の向く方向をz軸とする座標系上でのベクトルを指定し、そのベクトルの絶対座標における成分を返します。
個体が存在しない、あるいはタイル上に存在しない場合にはエラーとなります。
**lvKeyFree[#lvKeyFree]
lvKeyFree("r.click")
-引数:文字列(キー名)
戻り値:真偽
-指定した文字列がキー名であり、かつそのキーが押されていなければ「true」、押されていれば「false」を返します。
存在しないキー名を記述した場合にはエラーとなります。
**lvKeyDown[#lvKeyDown]
lvKeyDown("r.click")
-引数:文字列(キー名)
戻り値:真偽
-指定した文字列がキー名であり、かつそのキーが押された瞬間に「true」、それ以外では「false」を返します。
存在しないキー名を記述した場合にはエラーとなります。
**lvKeyPressed[#lvKeyPressed]
lvKeyPressed("r.click")
-引数:文字列(キー名)
戻り値:真偽
-指定した文字列がキー名であり、かつそのキーが押されていれば「true」、押されていなければ「false」を返します。
存在しないキー名を記述した場合にはエラーとなります。
**lvRoundToInteger[#lvRoundToInteger]
lvRoundToInteger(24.71358)
-引数:数値(変数値が数値の変数名を含む)
戻り値:数値
-指定した数値または変数名が持つ数値に最も近い整数値を返します。
上記の例では「25」が返されます。
**lvFloor[#lvFloor]
lvFloor(19.71358)
-引数:数値(変数値が数値の変数名を含む)
戻り値:数値
-指定した数値または変数名が持つ数値の整数部分を数値として返します。
上記の例では「19」が返されます。
**lvNumberToString[#lvNumberToString]
lvNumberToString(48)
lvNumberToString(1354.551, 0)
-引数:数値(変数値が数値の変数名を含む)、数値(小数点以下の桁数を指定、省略可)
戻り値:文字列(数値)
-指定した数値または変数名が持つ数値を文字列に変換して返します。
-小数点以下の桁をどこまで含むかは、引数に数値を加えて指定します。
「0」は整数となります。上記の例の2つめでは「"1354"」が返されます。
**lvStringToNumber[#lvStringToNumber]
lvStringToNumber("380")
-引数:文字列(数値のみ)
戻り値:数値
-指定した文字列の数値を数値として返します。
数値以外の文字列を渡すとエラーになります。
**lvSubstringCount[#lvSubstringCount]
lvSubstringCount("seashore", "s")
-引数:文字列(テキスト、または変数値が文字列の変数名)、文字列(テキスト、または変数値が文字列の変数名)
戻り値:数値
-対象(引数1)で指定した文字列または変数名が持つ文字列の中に、検索(引数2)で指定した文字列または変数名が持つ文字列がいくつ含まれるかを返します。
**lvVarFromString[#lvVarFromString]
lvVarFromString("t_var")
-引数:文字列(変数名)
戻り値:変数値
-指定した文字列を変数名として識別し、その変数値を返します。
変数名以外の文字列を渡すとエラーになります。
**lvCopyDeep[#lvCopyDeep]
lvCopyDeep(list1)
-引数:変数名
戻り値:変数値(指定した変数と同型)
-指定した変数名が持つ変数値を返します。
-任意の時点での変数値を別の変数へ静的に保存する際に用います。
変数値がリストやハッシュマップであれば、保存先の別の変数には同じ要素を持つリストやハッシュマップが構築されます。
**lvCreateVarList[#lvCreateVarList]
lvCreateVarList(2, lvCreateVarHashMap())
lvCreateVarList(3)
lvCreateVarList(5, "空っぽなんですけどォ!?")
-引数:数値(要素数)、数値(初期値、省略可)・LVN関数(ListまたはHashmap、省略可)・テキスト(初期値、省略可)・変数名(変数値がリストやハッシュマップではないもの、省略可)
戻り値:List変数
-リスト変数を返します。
項目参照:[[配列>array#about]]・[[リスト>array#list]]
**lvListPushFront[#lvListPushFront]
lvListPushFront(list1, 0)
-引数:変数名(リスト変数に限る)、数値・テキスト(追加変数値)
戻り値:List変数(要素追加後のもの)
-指定したリスト変数や、指定したインデックスの子要素がリスト変数であるものに対して、指定した変数値を持つ要素をリストの先頭に追加します。
既存の各要素のインデックスは1増加し、追加された要素のインデックスは「0」となります。
**lvListPushBack[#lvListPushBack]
lvListPushBack(list1, 0)
-引数:変数名(リスト変数に限る)、数値・テキスト(追加変数値)
戻り値:List変数(要素追加後のもの)
-指定したリスト変数や、指定したインデックスの子要素がリスト変数であるものに対して、指定した変数値を持つ要素をリストの末尾に追加します。
既存の要素のインデックスは変わらず、追加された要素のインデックスは既存のインデックスの最大値よりも1大きい値となります。
**lvListAppendBack[#lvListAppendBack]
lvListAppendBack(list1, list2)
-引数:変数名(リスト変数に限る)、変数名(リスト変数に限る)
戻り値:List変数(要素追加後のもの)
-指定したリスト変数や、指定したインデックスの子要素がリスト変数であるものに対して、指定したリスト変数の持つ要素をリストの末尾にすべて順次追加します。
**lvListPopFront[#lvListPopFront]
lvListPopFront(list1)
-引数:変数名(リスト変数に限る)
戻り値:List変数(要素削除後のもの)
-指定したリスト変数や、指定したインデックスの子要素がリスト変数であるものに対して、リストの先頭の要素を削除します。
既存の各要素(インデックスが0ではないもの)のインデックスは1減少します。
**lvListPopBack[#lvListPopBack]
lvListPopBack(list1)
-引数:変数名(リスト変数に限る)
戻り値:List変数(要素削除後のもの)
-指定したリスト変数や、指定したインデックスの子要素がリスト変数であるものに対して、リストの末尾の要素を削除します。
既存の各要素のインデックスは変化しません。
**lvListPushAt[#lvListPushAt]
lvListPushAt(list1, 3, 5)
-引数:変数名(リスト変数に限る)、数値(インデックス)、数値・LVN関数(ListまたはHashmap)・テキスト・変数名(変数値がリストやハッシュマップではないもの)
戻り値:List変数(要素追加後のもの)
-指定したインデックスに対して、指定した変数値を挿入します。
既存の要素のうち、指定されたインデックス以上の要素のインデックスは1増加します。
**lvListPopAt[#lvListPopAt]
lvListPopAt(list1, 3)
-引数:変数名(リスト変数に限る)、数値(インデックス)
戻り値:List変数(要素削除後のもの)
-指定したインデックスの要素を削除します。
既存の要素のうち、指定されたインデックス以上の要素のインデックスは1減少します。
**lvListIndexWithHashKeyValue[#lvListIndexWithHashKeyValue]
lvListIndexWithHashKeyValue(list1, "volume", "green tea")
-引数:変数名(リスト変数に限る)、キー(テキスト)、値(数値・テキスト・変数名)
-指定したリスト変数の要素に、指定したキーと値を持つハッシュマップ変数が存在すれば、リスト内でのインデックスを返します。
存在しなければ「-1」を返します。
**lvListIndexEmptyFirst[#lvListIndexEmptyFirst]
lvListIndexEmptyFirst(list1)
-引数:変数名(リスト変数に限る)
戻り値:数値(インデックス)
-指定したリスト変数や、指定したインデックスの要素がリスト変数であるものに対して、未定義の要素または要素を持たないハッシュマップ変数である要素のインデックスを返します。
すべて定義済の場合には「-1」を返します。
**lvCreateVarHashMap[#lvCreateVarHashMap]
lvCreateVarHashMap()
-引数:なし
戻り値:HashMap変数
-ハッシュマップ変数を返します。
項目参照:[[配列>array#about]]・[[ハッシュマップ>array#hashmap]]
**lvCreateVarHashMapFromJson[#lvCreateVarHashMapFromJson]
lvCreateVarHashMapFromJson("/info.json")
-引数:文字列(jsonファイルの絶対パス)
戻り値:HashMap変数
-jsonファイルから作成したハッシュマップ変数を返します。
項目参照:[[配列>array#about]]・[[ハッシュマップ>array#hashmap]]
**lvCreateVarHashMapFromCsv[#lvCreateVarHashMapFromCsv]
lvCreateVarHashMapFromCsv("/info.csv")
-引数:文字列(CSVファイルの絶対パス)
戻り値:HashMap-HashMap変数
-CSVファイルから作成したハッシュマップ・ハッシュマップ変数を返します。
1行めは、全列が次行以降に追加されるハッシュマップ変数のキー名となります。
2行め以降は、1列めの値をキーとしてハッシュマップ変数を生成しつつ、全列が1行めで定義された各キーの値になります。
--たとえば、1行めが「key0,key1,key2」、2行めが「v0,v1,v2」であるとします。
まずは、本関数で定義した変数の配下にハッシュマップ変数が定義され、「v0」がキーとして追加されます。
そのうえで、当該キーの値にはさらなるハッシュマップ変数が生成され、キー「key0」に値「v0」、キー「key1」に値「v1」、キー「key2」に値「v2」が対応します。
--2行め以降の1列めの値で他行との重複がある場合においては、最も行数の大きい行で最終の従属ハッシュマップ変数の各値が定められます。
項目参照:[[配列>array#about]]・[[ハッシュマップ>array#hashmap]]
**lvCreateVarListFromCsv[#lvCreateVarListFromCsv]
lvCreateVarListFromCsv("/info.csv")
-引数:文字列(CSVファイルの絶対パス)
戻り値:List-HashMap変数
-CSVファイルから作成したリスト・ハッシュマップ変数を返します。
1行めは、全列が次行以降に追加されるハッシュマップ変数のキー名となります。
2行め以降は、リスト変数の値としてハッシュマップ変数を生成しつつ、全列が1行めで定義された各キーの値になります。
--たとえば、1行めが「key0,key1,key2」、2行めが「v0,v1,v2」であるとします。
まずは、本関数で定義した変数の配下にリスト変数が定義されます。
そのうえで、新規のインデックス「0」においてハッシュマップ変数が生成され、キー「key0」に値「v0」、キー「key1」に値「v1」、キー「key2」に値「v2」が対応します。
もし3行めが存在すれば、インデックス「1」において同様に対応がとられます。
項目参照:[[配列>array#about]]・[[リスト>array#list]]・[[ハッシュマップ>array#hashmap]]
**lvCreateVarArrayFromCsv[#lvCreateVarArrayFromCsv]
lvCreateVarArrayFromCsv("/info.csv")
-引数:文字列(CSVファイルの絶対パス)
戻り値:2DList変数
-CSVファイルから作成した斉次2次元リスト変数を返します。
--たとえば、1行めが「key0,key1,key2」、2行めが「v0,v1,v2」であるとします。
まずは、本関数で定義した変数の配下にリスト変数が定義されます。
そのうえで、新規のインデックス「0」においてリスト変数が生成され、インデックス「0」に値「key0」、インデックス「1」に値「key1」、インデックス「2」に値「key2」が対応します。
2行めも同様に、インデックス「1」においてリスト変数が生成され、インデックス「0」に値「v0」、インデックス「1」に値「v1」、インデックス「2」に値「v2」が対応します。
項目参照:[[配列>array#about]]・[[リスト>array#list]]
**lvHashMapHasKey[#lvHashMapHasKey]
lvHashMapHasKey(hm01, "在庫")
-引数:変数名、文字列(キー名)
戻り値:真偽
-指定した変数がハッシュマップ変数であり、かつ指定したキー名の要素を持つ場合には「true」を返します。
指定した変数がハッシュマップ変数でない、または指定したキー名の要素を持たない場合には「false」を返します。
項目参照:[[配列>array#about]]・[[ハッシュマップ>array#hashmap]]
**lvHashMapEraseKey[#lvHashMapEraseKey]
lvHashMapEraseKey(hm01, "在庫")
-引数:変数名、文字列(キー名)
戻り値:HashMap変数
-指定した変数がハッシュマップ変数であり、かつ指定したキー名の要素を持つ場合には、当該要素とキーを削除します。
指定した変数がハッシュマップ変数でない、または指定したキー名の要素を持たない場合にはエラーとなります。
項目参照:[[配列>array#about]]・[[ハッシュマップ>array#hashmap]]
**lvIsEmpty[#lvIsEmpty]
lvIsEmpty(temp01)
-引数:変数名
戻り値:真偽
-指定した変数または要素がリスト変数またはハッシュマップ変数である(要素ではない)場合において、要素が存在しなければ「true」を返します。
指定した変数または要素の値が文字列である場合において、文字数が0であれば「true」を返します。
指定した変数または要素が上記のいずれでもない場合には「false」を返します。
-このLVN関数が「true」を返すのは、以下の場合です。
--「''lvCreateVarList(0)''」と定義して、以降に要素を追加しない。
--大きさが1以上のリスト変数を定義して、''要素をすべて削除''する。
--「''lvCreateVarHashMap()''」と定義して、以降に要素を追加しない。
--変数設定時に右辺を「""」と記述する。
**lvSize[#lvSize]
lvSize(list01)
-引数:変数名
戻り値:数値
-指定した変数または要素がリスト変数またはハッシュマップ変数である(要素ではない)場合において、要素数を返します。
指定した変数または要素の値が文字列である場合において、文字列の長さ(文字数)を返します。
指定した変数または要素が上記のいずれでもない場合には不正となります。
**lvClear[#lvClear]
lvClear(list01)
-引数:変数名
戻り値:List・HashMap変数
-指定した変数または要素がリスト変数またはハッシュマップ変数である(要素ではない)場合において、要素をすべて削除した同型変数を返します。
指定した変数または要素がリスト変数またはハッシュマップ変数ではない場合には不正となります。
**lvShuffle[#lvShuffle]
lvShuffle(list01)
-引数:List変数
戻り値:List変数(インデックス無作為交換後のもの)
-指定した変数または要素がリスト変数である(要素ではない)場合において、各要素のインデックスを無作為に再設定します。
**lvTextureW[#lvTextureW]
lvTextureW("CG/event01.png")
-引数:文字列(画像素材ファイルパス)
戻り値:数値
-指定した画像素材の幅を返します。
**lvTextureH[#lvTextureH]
lvTextureH("CG/event01.png")
-引数:文字列(画像素材ファイルパス)
戻り値:数値
-指定した画像素材の高さを返します。
**lvTextboxInUse[#lvTextboxInUse]
lvTextboxInUse()
-引数:なし
戻り値:文字列(個体名)
-現在の使用文字窓の個体名を返します。
**lvText[#lvText]
lvText("textbox1")
-引数:文字列(文字個体名・文字窓個体名)
戻り値:テキスト
-指定した指定した文字・文字窓個体が保持しているテキストを返します。
文字入力後の文字窓からテキストを抽出する際などに用います。
指定した個体がテキストを保持するものではない(絵個体など)場合には不正となります。
**lvTextTableLine[#lvTextTableLine]
lvTextTableLine("CSV/Names.csv", 22)
-引数:文字列(CSVファイルパス)、数値(行番号)
戻り値:文字列
-指定したCSVと行番号に該当する値を文字列として返します。
列は現在の列指定に従います。列指定がされていない場合には原則として無名列指定によるエラーとなります。
**lvTextBoundsW[#lvTextBoundsW]
lvTextBoundsW("textbox1")
-引数:文字列(文字個体名・文字窓個体名)
戻り値:数値
-指定した文字・文字窓個体の領域のうち、幅の大きさを返します。
**lvTextBoundsH[#lvTextBoundsH]
lvTextBoundsH("textbox1")
-引数:文字列(文字個体名・文字窓個体名)
戻り値:数値
-指定した文字・文字窓個体の領域のうち、高さの大きさを返します。
**lvMediaOffset[#lvMediaOffset]
lvMediaOffset("BGM_title")
-引数:文字列(個体名)
戻り値:数値
-指定した個体が音声個体である場合において、再生位置を返します。
**lvAnimationIsPlaying[#lvAnimationPlaying]
lvAnimationIsPlaying("eyeblink")
-引数:文字列(個体名)
戻り値:真偽
-指定した個体の素材がアニメーションである場合には「true」、アニメーションでなければ「false」を返します。
**lvState[#lvState]
lvState("Officer")
-引数:文字列(個体名)
戻り値:文字列(状態)
-指定した文字列を個体名に持つ個体の「状態」を返します。
「状態」は同名のコマンドで設定するものと同じです。
**lvHasState[#lvHasState]
lvHasState("Officer")
-引数:文字列(個体名)
戻り値:真偽
-指定した文字列を個体名に持つ個体が状態更新機個体を子個体に持つかを返します。
**lvGetNames[#lvGetNames]
lvGetNames("sys_.*")
-引数:文字列(個体名正規表現)
戻り値:リスト
-指定した文字列を正規表現として扱い、合致する個体をリストにして返します。
戻り値を受け取るために変数が必要です。
**lvGetClosestObjWithName[#lvGetClosestObjWithName]
lvGetClosestObjWithName("sys_UI_BGM", "sys_.*")
-引数:文字列(基準個体名)、文字列(個体名正規表現)
戻り値:リスト
-第2引数に指定した文字列を正規表現として扱い、合致する個体のうち、第2引数の文字列に最も近い個体名をリストにして返します。
戻り値を受け取るために変数が必要です。
**lvSaveExists[#lvSaveExists]
lvSaveExists(15)
-引数:数値(スロット番号)
戻り値:真偽
-指定したスロットにセーブデータが存在していれば「true」、存在しなければ「false」を返します。
**lvSaveImagePath[#lvSaveImagePath]
lvSaveImagePath(15)
-引数:数値(スロット番号)
戻り値:文字列(セーブ画像のファイルパス)
-指定したスロットにセーブデータが存在していれば、セーブ画像のファイルパスを文字列として返します。
存在しなければ「""」を返します。
**lvSaveInfo[#lvSaveInfo]
lvSaveInfo(15, "date")
-引数:数値(スロット番号)、文字列(情報名)
戻り値:文字列(情報)
-指定したスロットにセーブデータが存在していれば、「Info」内の指定した情報を文字列として返します。
情報名の確認は、各セーブデータのxmlファイルの2行めで確認できます。通常は「"date"」「"text"」のいずれかを記述します。
セーブデータや情報名が存在しなければ「""」を返します。
**lvSaveGetDataVar[#lvSaveGetDataVar]
lvSaveGetDataVar(15, "point")
-引数:数値(スロット番号)、文字列(変数名)
戻り値:変数値
-指定したスロットにセーブデータが存在していれば、指定した保存変数の値を同じ型で返します。
セーブデータや変数名が存在しなければ「""」を返します。
**lvSaveSetDataVar[#lvSaveSetDataVar]
lvSaveSetDataVar(15, "point", 1)
-引数:数値(スロット番号)、文字列(変数名)、変数値
戻り値:なし
-指定したスロットにセーブデータが存在していれば、指定した変数名に指定した値を設定し、保存変数としてセーブデータに記録します。
**lvMath::pi[#lvMath_pi]
lvMath::pi()
-引数:なし
戻り値:数値
-円周率を返します。
**lvMath::deg[#lvMath_deg]
lvMath::deg(lvMath::pi())
-引数:数値(単位:rad)
戻り値:数値(単位:°)
-角度について、引数の大きさの弧度を度数に変更して返します。
**lvMath::rad[#lvMath_rad]
lvMath::rad(180)
-引数:数値(単位:°)
戻り値:数値(単位:rad)
-角度について、引数の大きさの度数を弧度に変更して返します。
**lvMath::r_to_z[#r_to_z]
lvMath::r_to_z(50)
-引数:数値
戻り値:数値
-引数の数値をr座標とした時のz座標を返します。
**lvMath::z_to_r[#z_to_r]
lvMath::z_to_r(50)
-引数:数値
戻り値:数値
-引数の数値をz座標とした時のr座標を返します。
**lvMath::abs[#lvMath_abs]
lvMath::abs(5.33)
-引数:数値
戻り値:数値
-引数の数値の絶対値を返します。
**lvMath::sin[#lvMath_sin]
lvMath::sin(lvMath::pi())
-引数:数値(単位:rad)
戻り値:数値
-引数の正弦を返します。
**lvMath::cos[#lvMath_cos]
lvMath::cos(lvMath::pi())
-引数:数値(単位:rad)
戻り値:数値
-引数の余弦を返します。
**lvMath::tan[#lvMath_tan]
lvMath::tan(lvMath::pi())
-引数:数値(単位:rad)
戻り値:数値
-引数の正接を返します。
**lvMath::asin[#lvMath_asin]
lvMath::asin(0.5)
-引数:数値(-1以上1以下)
戻り値:数値(単位:rad)
-引数の正弦の逆関数を返します。
**lvMath::acos[#lvMath_acos]
lvMath::acos(lvMath::pi())
-引数:数値(-1以上1以下)
戻り値:数値(単位:rad)
-引数の余弦の逆関数を返します。
**lvMath::atan[#lvMath_atan]
lvMath::atan(lvMath::pi())
-引数:数値
戻り値:数値(単位:rad)
-引数の正接の逆関数を返します。
**lvMath::atan2[#lvMath_atan2]
lvMath::atan2(1, 0)
-引数:数値(引数a)、数値(引数b)
戻り値:数値(単位:rad)
-2引数による複素数a+ibの偏角を返します。
数学においてはaとbの両方を0とすることはできませんが、この関数ではその場合において0を返します。
**lvMath::sqrt[#lvMath_sqrt]
lvMath::sqrt(9)
-引数:数値(正の値)
戻り値:数値
-引数の平方根を返します。
**lvSystem::InputType[#lvSystem_InputType]
lvSystem::InputType()
-引数:なし
戻り値:数値
-端末の入力方式がマウス・キーボードであれば「0」、タッチパッドであれば「1」を返します。
**lvSystem::WindowMode[#lvSystem_WindowMode]
lvSystem::WindowMode
-引数:なし
戻り値:数値
-ウィンドウモードがフルスクリーンであれば「0」、ウィンドウであれば「1」、縦横比維持のフルスクリーンであれば「2」を返します。
**lvSystem::WindowSize[#lvSystem_WindowSize]
lvSystem::WindowSize
-引数:なし
戻り値:リスト
-ウィンドウサイズをリストで返します。idx:0は横幅、idx:1は縦幅を持ちます。
受け取るために変数が必要です。
**lvSystem::ViewportSize[#lvSystem_ViewportSize]
lvSystem::ViewportSize
-引数:なし
戻り値:リスト
-作品解像度をリストで返します。idx:0は横幅、idx:1は縦幅を持ちます。
受け取るために変数が必要です。
**lvSystem::IsFixedWindowSize[#lvSystem_IsFixedWindowSize]
lvSystem::IsFixedWindowSize()
-引数:なし
戻り値:真偽
-端末環境等によってウィンドウの大きさを変更できない場合に「true」、変更できる場合に「false」を返します。
**lvSystem::IsRunForever[#lvSystem_IsRunForever]
lvSystem::IsRunForever()
-引数:なし
戻り値:真偽
-端末環境等によってアプリケーション終了が存在しない場合に「true」、存在する場合に「false」を返します。
**lvSystem::IsPausingLowerScripts[#lvSystem_IsPausingLowerScripts]
lvSystem::IsPausingLowerScripts()
-引数:なし
戻り値:真偽
-コマンド「下位スクリプト一時停止」による下位スタックのスクリプト読込みの停止が実行されていれば「true」、実行されていなければ「false」を返します。