RPGツクールMVのプラグインパラメータ@typeで、パラメータのデータ型を指定することができます。
どのtypeを指定するとプラグインパラメータがどのように表示されるのか、画像つきで解説します。
※この記事を作成するにあたり、ツクマテフォーラムのプラグインパラメータの「@type」についてを参考にさせていただきました。
データ型
文字列型(string)
/*: ja * @param 文字列型 * @type string * @default テスト */

数値型(number)
/*: ja * @param 数値型 * @type number * @min 1 * @max 100 * @decimals 2 * @default 1.00 */

@min で最小値、@maxで最大値を設定できます。
マイナスの値も設定できます。
受け取りたい値が小数の場合、@decimals 桁数を記述します。
桁数には小数点以下の桁数を指定します。
論理型(boolean)
/*: ja * @param 論理型 * @type boolean * @on はい * @off いいえ * @default true */

@on / @offでパラメータ設定ダイアログに表示されるラジオボタンのラベルを変更することができます。
@onでtrueの時のラベル、@offでfalseの時のラベルを変えることができます。
配列
/*: ja * @param 配列型 * @type Number[] * @default ["1","2","3"] */

@typeはデータ型[]で指定します。
Number[]ならNumber型の配列、String[]ならString型の配列になります。
後述しますが、構造体の配列も作成することができます。
@defaultの値は、[‘項目1’, “項目2”, …]という形で指定します。
シングルクォーテーションでは認識せず、また、Number型の配列であってもダブルクォーテーションで囲む必要があります。
([1,2,3]や[‘1′,’2′,’3’]ではダメ)
初期値を空の配列にしたい時は、[]を指定します。
構造体(struct)
/*: ja * @param 構造体型 * @type struct<MyPerson> */ /*~struct~MyPerson: * @param name * @type string * @default John * * @param age * @type number * @min 18 * @default 25 */

プラグインの説明の外側に 構造体を定義するコメントブロックを記載します。
/*~struct~構造体名: から*/までが構造体を定義したコメントブロックになります。
(プラグインの説明の中に書かないように注意)
構造体名は任意ですが、アンダースコア含む記号は使えません。
構造体のコメントブロックの中で、パラメータを通常通り定義します。
サンプルコードでは、構造体MyPersonにString型のnameというパラメータと、Number型のageというパラメータを定義しています。
プラグインの説明のパラメータ定義のところで@typeを@struct<構造体名>と定義すると、構造体のパラメータができます。
セレクトボックス(select)
/*: ja * @param セレクトボックス * @type select * * @option 項目1 * @value 1 * * @option 項目2 * @value 2 * * @default 1 */

@typeはselectを指定し、リストの項目は@optionと@valueで定義します。
@optionではダイアログに表示させる項目名、@valueではその項目を選択した時の値を設定します。
@defaultを指定するときは項目名ではなく値(@valueの値)で指定します。
コンボボックス(combo)
/*: ja * @param コンボボックス * @type combo * * @option 項目1 * @option 項目2 * * @default 項目2 */

セレクトボックスと似ていますが、項目をリストから選ぶだけではなく、選択肢以外の値を入力できます。
セレクトボックス+テキストボックスのような感じ。
@valueコマンドはなく、項目名がそのまま値になります。
ノート(note)
/*: ja * @param ノート * @type note * @default "あいうえお\nかきくけこ\nさしすせそ" */

アイテムやアクターのメモ欄のような、複数行を入力可能なテキストボックスです。
制御文字\nで改行ができます。
@defaultを指定するときは、ダブルクォーテーションで囲む必要があります。
RPGツクールMV内のデータを選択
ファイル選択(file)
/*: ja * @param ファイル * @type file * @dir img */


ダイアログでファイル選択できるパラメータです。
@dirで、プロジェクト\imgまたはプロジェクト\audio配下のフォルダを指定します。
ルートフォルダ(img、audioフォルダ)を指定した場合は、パラメータ画面から子フォルダを選択できます。
@defaultを指定する場合は、ファイル名を指定します。
拡張子はいりません。
変数(variable)
/*: ja * @param 変数 * @type variable * @default 2 */


RPGツクールMVのゲーム内変数を選択できます。
@default には変数のIDを指定します。
パラメータの値には変数のID番号が入るので、 $gameVariables.value(index) でゲーム内変数の値を取得します。
@defaultを省略した場合、画面での表示は「なし」になり、パラメータの値は空文字になります。
undefinedじゃないことに注意。
スイッチ(switch)
/*: ja * @param スイッチ * @type switch * @default 2 */


RPGツクールMVのスイッチを選択できます。
データベース情報(actor他)
/*: ja * @param アクター * @type actor * @default 2 */

データベースの項目を選択できるセレクトボックスです。
選択リストには空のデータも表示されます。
@defaultを指定する場合は、IDで指定します。
@typeを変えれば、アクター以外のデータベース項目(アイテムやステートなど)も取得できます。
ただし、データベース項目のシステム、タイプ、用語は取得できません。
type | 項目 |
---|---|
actor | アクター |
class | 職業 |
skill | スキル |
item | アイテム |
weapon | 武器 |
armor | 防具 |
enemy | 敵キャラ |
troop | 敵グループ |
state | ステート |
animation | アニメーション |
tileset | タイルセット |
common_event | コモンイベント |
パラメータの階層化(@parent)
/*: ja * @param 親パラメータ * * @param 子パラメータ * @parent 親パラメータ * @desc パラメータを階層化して表示します */

パラメータの表示名を変更(@text)
/*: ja * @param sample * @text サンプル * @desc パラメータの表示名を変更します */
