メッセージウィンドウを調整【RPGツクールMZプラグイン】

2024年03月26日

 メッセージウィンドウに対して様々な調整を行います。
 例えば、ウィンドウのサイズや位置、行間などを調整できます。
 以下のゲーム画面ではフォントを大きくし、表示文章を3行にすることで読みやすくしています。



目次


導入方法(Install)

更新履歴(History)

メッセージ表示の3行化(3-line Message Display)

ウィンドウサイズの可変化(Variable Window Size)

ウィンドウの画像化(Window Imaging)ver1.04

マスク画像機能(Mask Image Function)

ウィンドウ端を見せない(Horizontal Window)

プラグインパラメータ

<メッセージウィンドウ>(MessageWindow)

ウィンドウの横幅(WindowWidth)
ウィンドウの縦幅(WindowHeight)
ウィンドウのX座標(WindowX)
ウィンドウのY座標(WindowY)
一行の縦幅(LineHeight)
文章のX座標調整(AdjustMessageX)
文章のY座標調整(AdjustMessageY)
文章のフォントサイズ(MessageFontSize)
ウィンドウの不透明度(WindowOpacity)
ウィンドウ枠を非表示(HideWindowFrame)ver1.04
ウィンドウ画像(WindowImage)ver1.04
ウィンドウ画像のX補正(AdjustWindowImageX)ver1.04
ウィンドウ画像のY補正(AdjustWindowImageY)ver1.04
ウィンドウ画像(名前付)(WindowImageName)ver1.04
マスク画像(MaskImage)
マスク対象外の不透明度(NoMaskOpacity)
アイコンのY座標修正(FixIconY)

<名前欄>(NameBoxWindow)

名前欄のX座標補正(NameBoxAdjustX)
名前欄のY座標補正(NameBoxAdjustY)
名前欄のフォントサイズ(NameBoxFontSize)
名前欄の不透明度(NameBoxOpacity)
名前欄の枠を非表示(HideNameBoxFrame)ver1.04
名前欄の重なり対応(OverlapNameBox)ver1.04
名前欄画像(NameBoxImage)ver1.04
名前欄画像のX補正(AdjustNameBoxImageX)ver1.04
名前欄画像のY補正(AdjustNameBoxImageY)ver1.04

<選択肢>(ChoiceWindow)

選択肢のX座標修正(FixChoiceX)

導入方法(install)


 以下のファイルをダウンロードし 、[プロジェクト]\js\plugins に放り込みます。ツクールのプラグイン管理から機能をONにしてください。
 ※このプラグインはMZ専用です。

 NRP_MessageWindow.js ver1.043(2024/03/26)

更新履歴(History)


2024/03/06 -> 2024/03/26(ver1.04 -> 1.043)


2023/09/28(ver1.03)


2023/07/26(ver1.02)

  • MVでの挙動が色々と怪しいので、とりあえずMZ専用に変更。
    ※一応動かないことはないですが、『一行の縦幅』が機能しません。

2023/01/16 -> 2023/07/25(ver1.01 -> 1.001)

  • 外部プラグインから縦幅の異なるメッセージウィンドウを呼び出した場合、マスク機能を適用しないように対応。
    また、それに伴いマスク対象外の不透明度を追加。
    ※主に自動回復プラグインとの競合対策です。
  • MVにて、文字サイズが小さくなってしまう不具合修正。
    (2023/07/25 ver1.011)

2022/10/15 -> 2022/11/05(ver1.00 -> 1.002)

  • 公開!
  • 選択肢が表示されなくなる不具合修正。(2022/10/18 ver1.001)
  • ウィンドウサイズを可変にした場合、文字が表示されないことがある不具合修正。(2022/11/05 ver1.002)

メッセージ表示の3行化(3-line Message Display)


 前述の通り、フォントを大きくしてメッセージを3行表示にすれば、文章を読みやすくすることができます。


 調べてみれば分かりますが、今時のJRPGやADVは2〜3行+名前欄というスタイルが主流です。


 MZデフォルトの4行+名前欄というスタイルは、文字が小さく文章量が多くなりがちなので読みづらいです。
 何も考えず初期状態を踏襲することはあまりオススメしません。

 なお、単純にフォントサイズを拡大すると窮屈になるので、『一行の縦幅』を広くすることがポイントです。
 特に漢字にルビを振るプラグインと併用する場合は、行間を広めに取ることをオススメします。

ウィンドウサイズの可変化(Variable Window Size)


 ほとんどの項目で数式が使用可能です。
 例えば『ウィンドウの縦幅』を「$gameVariables.value(1)」にすれば、変数1の値によって、メッセージウィンドウの縦幅が変化するようになります。


 例えば「一枚絵を表示するシーンでは文章を2行にしたい」といった場合に便利です。

ウィンドウの画像化(Window Imaging)ver1.04


 メッセージウィンドウおよび名前欄を画像で表示することができます。
 画像はimg\systemフォルダに配置してください。

 メッセージウィンドウと名前欄で別々の画像を使用する方法と、名前の表示がある場合のみ、別の画像を使用する方法の二通りに対応しています。
 以下は名前欄の表示がある時とない時で、別のウィンドウ画像を使用した例です。



 また、そのままだと元のウィンドウが残ってしまうため、不透明度を0にした上で、枠を非表示にしてください。
 ※元のウィンドウを残した上で画像で装飾しても構いません。

マスク画像機能(Mask Image Function)


 『マスク画像』を設定することで、ウィンドウの透明度を細かく設定できます。
 マスク画像はsystemフォルダに配置してください。
 ※ぶっちゃけ、ver1.04で追加したウィンドウの画像化機能を使ったほうが自由度も高く便利だと思います。



 例えば、ウィンドウの右側だけ透明度を上げるといった調整ができます。マスク画像の白い部分が不透明で、黒い部分が透明となっていることが分かるでしょうか。
 ※上記のマスク画像をそのまま使用してもよいですし、ペインターのグラデーション機能などで最適なマスク画像を作っても構いません。

 なお、RPGツクールMVではなぜか機能しないのでMZ専用です。

マスク対象外の不透明度(NoMaskOpacity)

 メッセージウィンドウにマスクを適用できなかった場合の不透明度です。
 外部プラグインによって、通常とは異なる幅のウィンドウが表示された場合を想定しています。

ウィンドウ端を見せない(Horizontal Window)


 少し工夫すれば、以下のゲーム画面のようにメッセージウィンドウの端を見せないようにできます。


 特別な設定をしているわけではなく、以下の方法で実現しています。

  • 『ウィンドウのX座標』にマイナス値を入れて左に寄せる。
  • 『ウィンドウの横幅』を大きくして画面右まで伸ばす。
  • 文章が左に寄るのが気になる場合は『文章のX座標調整』を足しておく。

プラグインパラメータ


<メッセージウィンドウ>(MessageWindow)

ウィンドウの横幅(WindowWidth)

 メッセージウィンドウの横幅です。
 初期値は「Graphics.boxWidth」です。

ウィンドウの縦幅(WindowHeight)

 メッセージウィンドウの縦幅です。
 初期値は「this.fittingHeight(4) + 8」です。

 上記は「4行分の縦幅+8ピクセル」という意味です。
 数値を好きな行数に変えてもいいですし、別にベタで直接数値を入力しても構いません。

ウィンドウのX座標(WindowX)

 メッセージウィンドウを表示するX座標です。

ウィンドウのY座標(WindowY)

 メッセージウィンドウを表示するY座標です。
 初期値:(this._positionType * (Graphics.boxHeight - this.height)) / 2

 『this._positionType』というのがウィンドウ位置の上中下に相当します。基本的には初期値で構いません。

一行の縦幅(LineHeight)

 文章の一行当たりの縦幅です。
 初期値は36です。

文章のX座標調整(AdjustMessageX)

文章のY座標調整(AdjustMessageY)

 文章のX座標およびY座標を調整します。

 ※立ち絵プラグインの『文章のX座標調整』『文章のY座標調整』と併用した場合は、あちらが優先されるのでご注意ください。

文章のフォントサイズ(MessageFontSize)

 文章のフォントサイズを個別に変更できます。
 システム2側でも設定できるので、不要な場合は空欄にしてください。

ウィンドウの不透明度(WindowOpacity)

 メッセージウィンドウの不透明度です。
 255で完全な不透明になります。

ウィンドウ枠を非表示(HideWindowFrame)ver1.04

 メッセージウィンドウの枠を非表示にします。

ウィンドウ画像(WindowImage)ver1.04

 ウィンドウ用の画像です。

ウィンドウ画像のX補正(AdjustWindowImageX)ver1.04

 ウィンドウ画像のX座標を調整します。

ウィンドウ画像のY補正(AdjustWindowImageY)ver1.04

 ウィンドウ画像のY座標を調整します。

ウィンドウ画像(名前付)(WindowImageName)ver1.04

 名前欄がある場合、通常のウィンドウ画像の代わりに使用する画像です。
 メッセージウィンドウと名前欄を統合するような画像を使用したい場合に設定してください。

 なお、以下の調整が必要となります。

  • 『名前欄の重なり対応』をオンにする。
  • 『名前欄の不透明』を0にする。
  • 『名前欄の枠を非表示』をオンにする。
  • 『ウィンドウ画像のY補正』で画像位置を調整。(任意)

 この項目を使わず、下の名前欄画像を別に設定する方法もあります。

マスク画像(MaskImage)

 ウィンドウに半透明処理を施すマスク画像です。
 この機能はMZ専用です。

アイコンのY座標修正(FixIconY)

 一行の縦幅を変更した時に、アイコンのY座標がズレる問題を修正します。

<名前欄>(NameBoxWindow)

 名前欄に関する項目です。
 ツクールMVでは存在しないため無効です。

名前欄のX座標補正(NameBoxAdjustX)

 名前欄のX座標補正値です。

名前欄のY座標補正(NameBoxAdjustY)

 名前欄のY座標補正値です。

名前欄のフォントサイズ(NameBoxFontSize)

 名前欄のフォントサイズです。

名前欄の不透明度(NameBoxOpacity)

 名前欄の不透明度です。
 255で完全な不透明になります。

名前欄の枠を非表示(HideNameBoxFrame)ver1.04

 名前欄の枠を非表示にします。

名前欄の重なり対応(OverlapNameBox)ver1.04

 名前欄が重なっても、メッセージウィンドウが消えないようにします。
 名前欄の位置をメッセージウィンドウと重なるような配置にしたい場合はオンにしてください。

名前欄画像(NameBoxImage)ver1.04

 名前ウィンドウ用の画像です。

名前欄画像のX補正(AdjustNameBoxImageX)ver1.04

 名前画像のX座標を調整します。

名前欄画像のY補正(AdjustNameBoxImageY)ver1.04

 名前欄画像のY座標を調整します。

<選択肢>(ChoiceWindow)

 選択肢に関する項目です。

選択肢のX座標修正(FixChoiceX)

 選択肢ウィンドウのX座標をメッセージウィンドウに合わせます。

 >RPGツクールMZ&MV目次に戻る
posted by 砂川赳 at 14:53 | RPGツクールMZ&MV | このブログの読者になる | 更新情報をチェックする