【解決済み】メッセージウィンドウの表示行数を変更したい

hkaru
記事: 29
登録日時: 2021年3月21日(日) 13:37

【解決済み】メッセージウィンドウの表示行数を変更したい

投稿記事by hkaru » 2021年4月03日(土) 20:15

実行内容「文章の表示」でメッセージウィンドウに出力される行数を4行から3行に変更したいです。
また、削除される一行分のメッセージウィンドウの高さを短くしたいです。

いろいろ調べてみた結果、
MVでは「rpg_windows.js」ファイルの「Window_Message.numVisibleRows」の
戻り値を4から変更することで実現できるようなのです。

しかし、MZには「rpg_windows.js」がなく
代替?の「rmmz_windows.js」には「Window_Message.numVisibleRows」や、
それに相応する定義が書かれていないようなので、別の箇所に定義があるのではと考えています。

お手数ですが、心当たりがあればご教示いただけますと幸いです。
よろしくお願いいたします。
最後に編集したユーザー hkaru on 2021年4月03日(土) 23:26 [ 編集 1 回目 ]

アバター
Plasma Dark
記事: 668
登録日時: 2020年2月08日(土) 02:29
連絡を取る:

Re: メッセージウィンドウの表示行数を変更したい

投稿記事by Plasma Dark » 2021年4月03日(土) 22:09

いろいろ調べてみた結果、
MVでは「rpg_windows.js」ファイルの「Window_Message.numVisibleRows」の
戻り値を4から変更することで実現できるようなのです。


例のサイトを参照されたものと思われますが、 rpg_windows.js (MZでは rmmz_windows.js )を始め、コアスクリプトと呼ばれるツクール本体のjsファイルを書き換えるべきではありません。
プラグインを書いて読み込むことで改造しましょう。

特にMZでは、コアスクリプトの更新反映機能をツクールエディタで提供しています。
rmmz_XXXX.js を自分で書き換えても、この更新反映機能を使うと最新バージョンのjsファイルに置き換えられてしまいます。
そうなったときに毎度、自分で変更した箇所を思い出して書き換え続けるのは良いやり方とは言えません。

しかし、MZには「rpg_windows.js」がなく
代替?の「rmmz_windows.js」には「Window_Message.numVisibleRows」や、
それに相応する定義が書かれていないようなので、別の箇所に定義があるのではと考えています。


MZでは、ウィンドウのサイズはシーンクラス側で定義されるようになりました。
メッセージウィンドウのサイズは、 rmmz_scene.js の Scene_Message.prototype.messageWindowRect で定義されています。

つまり、下記内容をjsファイルとして保存し、プラグインとして読み込むことでメッセージウィンドウの行数を三行に変更できます。

コード: 全て選択

(() => {
  'use strict';
  Scene_Message.prototype.messageWindowRect = function() {
    return new Rectangle(0, 0, Graphics.boxWidth, this.calcWindowHeight(3, false));
  };
})();
hkaru
記事: 29
登録日時: 2021年3月21日(日) 13:37

Re: メッセージウィンドウの表示行数を変更したい

投稿記事by hkaru » 2021年4月03日(土) 23:26

Plasma Dark さんが書きました:
いろいろ調べてみた結果、
MVでは「rpg_windows.js」ファイルの「Window_Message.numVisibleRows」の
戻り値を4から変更することで実現できるようなのです。


例のサイトを参照されたものと思われますが、 rpg_windows.js (MZでは rmmz_windows.js )を始め、コアスクリプトと呼ばれるツクール本体のjsファイルを書き換えるべきではありません。
プラグインを書いて読み込むことで改造しましょう。

特にMZでは、コアスクリプトの更新反映機能をツクールエディタで提供しています。
rmmz_XXXX.js を自分で書き換えても、この更新反映機能を使うと最新バージョンのjsファイルに置き換えられてしまいます。
そうなったときに毎度、自分で変更した箇所を思い出して書き換え続けるのは良いやり方とは言えません。

しかし、MZには「rpg_windows.js」がなく
代替?の「rmmz_windows.js」には「Window_Message.numVisibleRows」や、
それに相応する定義が書かれていないようなので、別の箇所に定義があるのではと考えています。


MZでは、ウィンドウのサイズはシーンクラス側で定義されるようになりました。
メッセージウィンドウのサイズは、 rmmz_scene.js の Scene_Message.prototype.messageWindowRect で定義されています。

つまり、下記内容をjsファイルとして保存し、プラグインとして読み込むことでメッセージウィンドウの行数を三行に変更できます。

コード: 全て選択

(() => {
  'use strict';
  Scene_Message.prototype.messageWindowRect = function() {
    return new Rectangle(0, 0, Graphics.boxWidth, this.calcWindowHeight(3, false));
  };
})();


回答ありがとうございます!
例のサイトを参照されたものと思われますが、 rpg_windows.js (MZでは rmmz_windows.js )を始め、コアスクリプトと呼ばれるツクール本体のjsファイルを書き換えるべきではありません。

そうなのですね・・・
ツクール歴2週間で知らない事ばかりなので、教えてくれてありがとうございます。

MZでは、ウィンドウのサイズはシーンクラス側で定義されるようになりました。
メッセージウィンドウのサイズは、 rmmz_scene.js の Scene_Message.prototype.messageWindowRect で定義されています。

つまり、下記内容をjsファイルとして保存し、プラグインとして読み込むことでメッセージウィンドウの行数を三行に変更できます。

こちらも試してみたところ、3行で出力されるようになりました!

大変参考になりました。
また不明点ありましたら、助けていただけるとありがたいです!!

“MZ:質問” へ戻る