- 公式ブログへのリンクを移転先に修正しました。
- パラメータの一括型変換を簡略化しました。
2018-02-22
- 構造名には記号を使用できない旨を追記しました。
---
公式ブログにて情報が公開されました。
RPGツクールMV ver1.5.0以降のプラグインパラメータに関して
http://rpgtkool.hatenablog.com/entry/2017/09/27/165443
---
プラグインのパラメータは「@type」によって入力ウィンドウのタイプを指定できます。
v1.5.0 時点で確認できた仕様は以下の通りです。
データ型に基づくタイプ
コード: 全て選択
@param 文字列型
@type string
@param 数値型
@type number
@min -255
@max 255
@decimals 1
@param 論理型
@type boolean
@on ON
@off OFF
@param 配列型
@type 任意のタイプ[]
@param 構造型
@type struct<構造名>
/*~struct~構造名:
* @param パラメータ1
* @param パラメータ2
*/
特殊なタイプ
コード: 全て選択
@param ファイル
@type file
@require 1
@dir img/animations
@param セレクトボックス
@type select
@option オプション1
@value 1
@option オプション2
@value 2
@default 1
@param コンボボックス
@type combo
@option オプション1
@option オプション2
@param ノート
@type note
コード: 全て選択
@param 変数
@type variable
@param スイッチ
@type switch
@param アクター
@type actor
@param 職業
@type class
@param スキル
@type skill
@param アイテム
@type item
@param 武器
@type weapon
@param 防具
@type armor
@param 敵キャラ
@type enemy
@param 敵グループ
@type troop
@param ステート
@type state
@param アニメーション
@type animation
@require 1
@param タイルセット
@type tileset
@param コモンイベント
@type common_event
コード: 全て選択
@param 親パラメータ
@param 子パラメータ
@parent 親パラメータ
@desc パラメータを階層化して表示します
@param sample
@text サンプル
@desc パラメータの表示名を変更します
値の型を自動で判定して変換します。入れ子対応。
値が計算式やJavaScriptであれば実行します。コアスクリプト非対応。
コード: 全て選択
var parameters = PluginManager.parameters(プラグイン名);
var param = JSON.parse(JSON.stringify(parameters, function(key, value) {
try {
return JSON.parse(value);
} catch (e) {
try {
return eval(value);
} catch (e) {
return value;
}
}
}));
パラメータの設定値がnullであれば初期値を代入します。※処理に時間がかかります。
コード: 全て選択
var _parameters = {
パラメータ名1: 初期値1,
パラメータ名2: 初期値2,
:
};
Object.keys(_parameters).forEach(function(key) {
if (parameters[key] === null) parameters[key] = _parameters[key];
});
パラメータ名がJavaScript準拠であればドット連結で参照できます。
コード: 全て選択
parameters.paramString
parameters.paramArray[0]
parameters.paramStruct.param1
RPGツクールMV 1.5.0 ~ 1.6.0
サンプルについて
公式ヘルプには明記されていないタグを含みます。
ヘルプに明記されているタイプは file と animation のみです。
動作の保証、更新の保証はありません。
データ型について
従来通り、値はすべて文字列として保存されます。
false の扱いに注意してください。
number について
通常は自然数のみ扱います。
min/max の最小値/最大値は片方のみの指定も可能です。
min で指定範囲までのマイナス値を扱えるようになります。
max をマイナス値にする場合は min もマイナス値にしてください。
decimals で指定桁の小数を扱えるようになります。
number で扱える値
最小値: -9,007,199,254,740,992 (-2^53)
最大値: 9,007,199,254,740,992 (2^53)
JavaScript で安全に扱える値
最小値: -9,007,199,254,740,991 (-2^53-1)
最大値: 9,007,199,254,740,991 (2^53-1)
安全な値に整形する場合は Number.clamp() を使用してください。
file について
dir 以下のファイルパスまたはフォルダパスを取得します。拡張子は含みません。
未使用ファイルの処理に対応するには require を使用してください。
img, audio 以下の子フォルダは新規フォルダを参照できます。
img, audio 以外の親フォルダは参照できません。
参考元
マンカインド様 情報提供
min/maxについて
text/common_event/valueについて
SumRndmDde様 プラグイン
SRD_CreditsPlugin.js
SRD_GameUpgrade.js
SRD_PreloaderCore.js
orzfly様 海外フォーラム投稿
とても参考になりました。ありがとうございます。
ダウンロード
各タイプのUIを確認できるサンプルプラグインを作成しました。
実用的なプラグインではないためTIPSとして投稿します。