ページ 11

【解決済み】メッセージウィンドウだけのフォントサイズを変更したい

Posted: 2020年12月30日(水) 12:22
by スヴェン
ゲーム内でスクリプトかなにかを使用してメッセージウィンドウのフォントだけをサイズ変更することは出来ないでしょうか?
システムで変更するとバトル画面のフォントがハミ出てしまうのでメッセージだけ大きさを変えたいです。

Re: メッセージウィンドウだけのフォントサイズを変更したい

Posted: 2020年12月30日(水) 14:58
by ムノクラ
メルト さんが書きました:ゲーム内でスクリプトかなにかを使用してメッセージウィンドウのフォントだけをサイズ変更することは出来ないでしょうか?
システムで変更するとバトル画面のフォントがハミ出てしまうのでメッセージだけ大きさを変えたいです。
素朴な疑問
1.「メッセージウィンドウ」の定義
イベントコマンド「文章の表示」で表示されるウィンドウのことでしょうか?
制御文字\FS[xx]を使用するのが面倒ということでしょうか?

2.戦闘開始のメッセージウィンドウ
「~が出現」も「文章の表示」と同じメッセージウィンドウが使用されていると予想しますが、こちらへの影響は?

簡単ですが、下記をプラグインにして利用してください。

コード: 全て選択

(() => {
  "use strict";

  const _Game_Message_add = Game_Message.prototype.add;
  Game_Message.prototype.add = function (text) {
    text = '\\FS[10]' + text;
    _Game_Message_add.call(this, text);
  };

})();
SetMessageFontSize.js
(223 バイト) ダウンロード数: 82 回
[10]の中の数字がフォントサイズです。
文章の表示の最初に制御文字を自動的に追加した動作になります。

この投稿の著作権は放棄します。

Re: メッセージウィンドウだけのフォントサイズを変更したい

Posted: 2020年12月31日(木) 00:16
by スヴェン
解答ありがとうございます。

1、文章表示のウィンドウです。その制御文字は知りませんでした。
おそらくその都度設定しないといけないのだと思いますがすでに読むだけで12時間以上の大量のテキストを書いていますので使用は出来ませんね。

2.スクリプトでそれらの表示はされないようにしていますので大丈夫です。

プラグインありがとうございます。
使用させていただきます。

ムノクラ さんが書きました:
メルト さんが書きました:ゲーム内でスクリプトかなにかを使用してメッセージウィンドウのフォントだけをサイズ変更することは出来ないでしょうか?
システムで変更するとバトル画面のフォントがハミ出てしまうのでメッセージだけ大きさを変えたいです。
素朴な疑問
1.「メッセージウィンドウ」の定義
イベントコマンド「文章の表示」で表示されるウィンドウのことでしょうか?
制御文字\FS[xx]を使用するのが面倒ということでしょうか?

2.戦闘開始のメッセージウィンドウ
「~が出現」も「文章の表示」と同じメッセージウィンドウが使用されていると予想しますが、こちらへの影響は?

簡単ですが、下記をプラグインにして利用してください。

コード: 全て選択

(() => {
  "use strict";

  const _Game_Message_add = Game_Message.prototype.add;
  Game_Message.prototype.add = function (text) {
    text = '\\FS[10]' + text;
    _Game_Message_add.call(this, text);
  };

})();
SetMessageFontSize.js

[10]の中の数字がフォントサイズです。
文章の表示の最初に制御文字を自動的に追加した動作になります。

この投稿の著作権は放棄します。

Re: メッセージウィンドウだけのフォントサイズを変更したい

Posted: 2020年12月31日(木) 16:35
by スヴェン
すみません、サイズ変更は出来たのですがもう一つ問題が発生したので質問させてください。

おかげで文字サイズ変更は無事できたのですがさらに欲が出てきまして作中でフォントサイズを選べるように出来ないかと思い、コモンイベントで「25(デフォルト)、30,32、34」と複数の項目を用意してスクリプトで指定して大きさを選べるように設定しました。
所がロードし直すとデフォルトサイズに戻ってしまい毎回設定しないといけない状態になっています。
フォントサイズを変数で記憶させて代入できないかと思い、変数を記憶するプラグインと併用して25番目の変数をフォントサイズ用の変数として
「(() => {
"use strict";

const _Game_Message_add = Game_Message.prototype.add;
Game_Message.prototype.add = function (text) {
text = '\\FS[\V[25]]' + text;
_Game_Message_add.call(this, text);
};

})();」と記述しましたがメッセージが出る時にエラーが発生してしまいました。

方法は問いません、フォントのサイズを記憶した状態にする方法はないでしょうか?

ムノクラ さんが書きました:
メルト さんが書きました:ゲーム内でスクリプトかなにかを使用してメッセージウィンドウのフォントだけをサイズ変更することは出来ないでしょうか?
システムで変更するとバトル画面のフォントがハミ出てしまうのでメッセージだけ大きさを変えたいです。
素朴な疑問
1.「メッセージウィンドウ」の定義
イベントコマンド「文章の表示」で表示されるウィンドウのことでしょうか?
制御文字\FS[xx]を使用するのが面倒ということでしょうか?

2.戦闘開始のメッセージウィンドウ
「~が出現」も「文章の表示」と同じメッセージウィンドウが使用されていると予想しますが、こちらへの影響は?

簡単ですが、下記をプラグインにして利用してください。

コード: 全て選択

(() => {
  "use strict";

  const _Game_Message_add = Game_Message.prototype.add;
  Game_Message.prototype.add = function (text) {
    text = '\\FS[10]' + text;
    _Game_Message_add.call(this, text);
  };

})();
SetMessageFontSize.js

[10]の中の数字がフォントサイズです。
文章の表示の最初に制御文字を自動的に追加した動作になります。

この投稿の著作権は放棄します。

Re: メッセージウィンドウだけのフォントサイズを変更したい

Posted: 2020年12月31日(木) 18:19
by ムノクラ
メルト さんが書きました:すみません、サイズ変更は出来たのですがもう一つ問題が発生したので質問させてください。

おかげで文字サイズ変更は無事できたのですがさらに欲が出てきまして作中でフォントサイズを選べるように出来ないかと思い、コモンイベントで「25(デフォルト)、30,32、34」と複数の項目を用意してスクリプトで指定して大きさを選べるように設定しました。
所がロードし直すとデフォルトサイズに戻ってしまい毎回設定しないといけない状態になっています。
フォントサイズを変数で記憶させて代入できないかと思い、変数を記憶するプラグインと併用して25番目の変数をフォントサイズ用の変数として
「(() => {
"use strict";

const _Game_Message_add = Game_Message.prototype.add;
Game_Message.prototype.add = function (text) {
text = '\\FS[\V[25]]' + text;
_Game_Message_add.call(this, text);
};

})();」と記述しましたがメッセージが出る時にエラーが発生してしまいました。

方法は問いません、フォントのサイズを記憶した状態にする方法はないでしょうか?
こんな感じでしょうか?
一応、補足しますが、先程の投稿も、今回もプラグインであって、スクリプトではありません。
プラグインの内容をイベントのスクリプトにそのまま入れても機能しません。

コード: 全て選択

/*:
 * @target MZ
 * @plugindesc 指定した変数の値をメッセージウィンドウのフォントサイズにします。
 * @help
 * 指定した変数の値をメッセージウィンドウのフォントサイズにします。
 * 文章の内容に制御文字 \FS[xx] を使用して変更することも出来ます。
 * 
 * 利用規約
 *   このプラグインはCC0です。
 *   著作権を放棄します。
 * 
 * @param textVariable
 * @text フォントサイズ変数ID
 * @type variable
 * @desc 指定した変数の値をメッセージウィンドウのフォントサイズにします。
 * @default 0
 */

(() => {
  "use strict";

  const pluginName = document.currentScript.src.split("/").pop().replace(/\.js$/, "");
  const parameters = PluginManager.parameters(pluginName);
  const textVariable = Number(parameters['textVariable'] || 0);

  const _Game_Message_add = Game_Message.prototype.add;
  Game_Message.prototype.add = function (text) {
    const baseSize = '\\FS[' + String($gameVariables.value(textVariable)) + ']';
    text = baseSize + text;
    _Game_Message_add.call(this, text);
  };

})();
SetMessageFontSize.js
(1.15 KiB) ダウンロード数: 55 回

Re: メッセージウィンドウだけのフォントサイズを変更したい

Posted: 2020年12月31日(木) 19:09
by スヴェン
無事やりたいように出来ました。
ありがとうございます。

スクリプトとプラグインの違いがよく分かってなくて申し訳ないです。
一応変数を指定せずに数字を入れたらスクリプトでも機能はしたのですが作中でプラグインとしての設定の維持の仕方が分からなかったので助かりました。

ムノクラ さんが書きました:
メルト さんが書きました:すみません、サイズ変更は出来たのですがもう一つ問題が発生したので質問させてください。

おかげで文字サイズ変更は無事できたのですがさらに欲が出てきまして作中でフォントサイズを選べるように出来ないかと思い、コモンイベントで「25(デフォルト)、30,32、34」と複数の項目を用意してスクリプトで指定して大きさを選べるように設定しました。
所がロードし直すとデフォルトサイズに戻ってしまい毎回設定しないといけない状態になっています。
フォントサイズを変数で記憶させて代入できないかと思い、変数を記憶するプラグインと併用して25番目の変数をフォントサイズ用の変数として
「(() => {
"use strict";

const _Game_Message_add = Game_Message.prototype.add;
Game_Message.prototype.add = function (text) {
text = '\\FS[\V[25]]' + text;
_Game_Message_add.call(this, text);
};

})();」と記述しましたがメッセージが出る時にエラーが発生してしまいました。

方法は問いません、フォントのサイズを記憶した状態にする方法はないでしょうか?
こんな感じでしょうか?
一応、補足しますが、先程の投稿も、今回もプラグインであって、スクリプトではありません。
プラグインの内容をイベントのスクリプトにそのまま入れても機能しません。

コード: 全て選択

/*:
 * @target MZ
 * @plugindesc 指定した変数の値をメッセージウィンドウのフォントサイズにします。
 * @help
 * 指定した変数の値をメッセージウィンドウのフォントサイズにします。
 * 文章の内容に制御文字 \FS[xx] を使用して変更することも出来ます。
 * 
 * 利用規約
 *   このプラグインはCC0です。
 *   著作権を放棄します。
 * 
 * @param textVariable
 * @text フォントサイズ変数ID
 * @type variable
 * @desc 指定した変数の値をメッセージウィンドウのフォントサイズにします。
 * @default 0
 */

(() => {
  "use strict";

  const pluginName = document.currentScript.src.split("/").pop().replace(/\.js$/, "");
  const parameters = PluginManager.parameters(pluginName);
  const textVariable = Number(parameters['textVariable'] || 0);

  const _Game_Message_add = Game_Message.prototype.add;
  Game_Message.prototype.add = function (text) {
    const baseSize = '\\FS[' + String($gameVariables.value(textVariable)) + ']';
    text = baseSize + text;
    _Game_Message_add.call(this, text);
  };

})();
SetMessageFontSize.js