power spot. 2023/02/19 22:03

カスタムメニュープラグイン講座(第3回)「Windowパラメータ(1)」

RPGツクールMZ向けのトリアコンタン氏のプラグイン「カスタムメニュープラグイン(SceneCustomMenu.js)」の使い方講座です。

リンク:
カスタムメニュー作成プラグインを調べてみた(とんびさん)

今回はWindowの設定パラメータの概要を解説します。
多くのパラメータが存在するので、複数回に分けて解説する予定です。
まずは以下の画像を御覧ください。

雑な画像ですが1つの画像に表示させてみました。
Windowパラメータには多くの設定項目があります。
重要な項目には【重要!】を明記してあります。

※・パラメータ名(parameter) このような記述をしますが、「パラメータ名」は設定項目名、「parameter」はプラグイン内部のパラメータ名です。

(1)識別子【重要!】
・ウィンドウ識別子(id)
ウィンドウのIDです。要はウィンドウの名前です。
呼び出したりするときに使用します。



(2)表示系パラメータ
・X座標(x)
・相対X座標ウィンドウ(RelativeWindowIdX)
・Y座標(y)
・相対Y座標ウィンドウ(RelativeWindowIdY)
・横幅(width)
・高さ(height)

ウィンドウの表示に関する項目です。実際に数値を入力してどのように変わるかを確認しながら変更するのが良いと思います。



(3)項目数と角度
・列数(ColumnNumber)
・行数(RowNumber)
・回転角度(Rotation)
・項目の高さ(ItemHeight)

ウィンドウに描写される項目の列数は縦割りに何列表示にするか、行数は横割りに何行表示にするか、ということです。
例として、列数:3、行数:8、項目の高さ:64に設定した場合は以下のようになります。(データベースのアイテムを表示させています)

回転角度はウィンドウ自体を回転させるときに設定します。0〜360(度)で入力します。
回転の原点は左上になります。以下は設定数値は330(-30)度にした場合です。



(4)コマンドリスト
表示させるカーソル系ウィンドウの内容があらかじめ決まっている場合に設定します。
装備変更画面であれば「装備・はずす・最強装備」や、アイテム画面の「アイテム・武器・防具・大事なもの」などです。

例としてさまざまな選択肢を明記してみました。



(5)データスクリプト【重要!】
ウィンドウに表示させるデータに関する項目です。
こちらの内容は別の回で解説したいと思います。



(6)ヘルプテキスト
・共通ヘルプテキスト(CommonHelpText)

ウィンドウがアクティブ(有効)になっているときにヘルプウィンドウに表示される文章です。
記述していませんでしたが、ウィンドウ上のカーソルが操作可能(有効)になっている場合を「アクティブ」と表現します。
逆にアクティブではない状態は「非アクティブ」、「ディアクティブ」などと言います。



(7)イベント系【重要!】
決定イベント、キャンセルイベント、カーソルイベント、ボタンイベントがあります。
こちらもデータスクリプト同様に別の回で解説したいと思います。



(8)フォント系
・フォントサイズ(FontSize)
・フォント(FontFace)

ウィンドウに表示される文章のフォントを変更します。



(9)ウィンドウ表示系
・他ウィンドウに重ねる(OverlapOther)

ウィンドウ同士が重なってしまった場合の表示方法を指定します。

・ウィンドウスキン(WindowSkin)

デフォルトのウィンドウスキンから変更したい場合はファイルを指定します。

・表示スイッチID(VisibleSwitchId)【重要!】

ゲーム用スイッチ番号を入力すると、そのスイッチがONの時のみウィンドウが表示されるようになります。

・開閉アニメ表示(ShowOpenAnimation)

ウィンドウの開閉アニメーションをするかしないかを設定します。

・再描画スイッチ(RefreshSwitchId)【重要!】

ウィンドウ内の内容を再描写する時、こちらで指定したスイッチIDをONにすることでウィンドウ内容を再描写します。



(10)変数系
・インデックス格納変数(IndexVariableId)【重要!】

カーソル系ウィンドウでは、項目に必ずインデックスが指定されています。1番目の項目のindexは0です。1ではないので注意が必要です。

カーソル系ウィンドウのindexをゲーム用変数に格納します。これは決定イベントやカーソルイベント、キャンセルイベントを実行時にコモンイベントを呼び出して処理を分岐させるときに使用します。別の回で解説予定です。

・インデックスを記憶(RememberIndex)

インデックスを記憶して、ウィンドウが再びアクティブになった時に記憶していた場所にカーソルが表示されます。

・選択項目格納変数(ItemVariableId)
選択中の項目の内容そのものをゲーム用変数に代入します。



(11)シーン系
・キャンセル可能(Cancelable)

ウィンドウがアクティブになった場合、キャンセルを出来るか出来ないかを設定します。

・シーン戻しキャンセル(PopCancel)

設定するウィンドウが最初のアクティブウィンドウの場合、キャンセル時に元のシーンに推移するかしないかを設定します。

・アクター変更可能(ActorChangeable)

アクターを切り替えるメニュー(ツクール内ではスキルや装備などのメニュー)の場合、アクターの変更を可能にします(ウィンドウがアクティブの場合)。

・非フォーカス時は隠す(HiddenNoFocus)

ウィンドウがフォーカス(アクティブ)になってない場合は閉じるようにするかを設定します。画像の3:confirmが「隠す」に設定されています。



(12)その他
・マスキングテキスト(MaskingText)

項目の内容を変更するときに使用します。

・決定SE(okSound)

決定SEをデフォルトの決定SEとは違うものに設定したいときにファイルを指定します。

・カーソルを手前に表示(cusorOverContents)

カーソルが項目の後ろに表示されているものを手前に表示するようにします。

・項目背景を表示しない(noItemBackground)

カーソル選択可能の黒い領域の表示・非表示を切り替えます。

・テキストカラー(textColor)

描写するテキストの色を変更します。文章の制御文字で指定する番号を入力します。


Windowだけでも多くのパラメータが存在しますね。設定が大変ですが、逆に言えばそれだけ多くの事を設定出来る=オリジナリティを表現出来るということです。

特に大事だと思うのはデータスクリプト、決定・キャンセル・カーソルイベント、インデックス変数、表示・再描画スイッチIDあたりでしょうか。

次回はデータスクリプトについて解説したいと思います。