[解決済]文章のウィンドウを一括で透明に

返信する
たんべ
記事: 7
登録日時: 2020年12月18日(金) 19:26

[解決済]文章のウィンドウを一括で透明に

投稿記事 by たんべ »

文章を打ち込むときって、デフォルトで「背景:ウィンドウ」なんですか?毎回「背景:透明」を選択するのが少々億劫なのですが…

そしてJSONファイルを置換すればウィンドウを一括で透明にできると聞いたのですが、手順を詳しく教えてほしいです。JSONファイルの何をどういじればいいんですか?
MVの方ではそのようなプラグインがあるみたいですが・・・
最後に編集したユーザー たんべ [ 2021年1月28日(木) 16:11 ], 累計 1 回
アバター
ムノクラ
記事: 2118
登録日時: 2018年2月23日(金) 11:41
連絡する:

Re: 文章のウィンドウを一括で透明に

投稿記事 by ムノクラ »

たんべ さんが書きました:文章を打ち込むときって、デフォルトで「背景:ウィンドウ」なんですか?毎回「背景:透明」を選択するのが少々億劫なのですが…

そしてJSONファイルを置換すればウィンドウを一括で透明にできると聞いたのですが、手順を詳しく教えてほしいです。JSONファイルの何をどういじればいいんですか?
MVの方ではそのようなプラグインがあるみたいですが・・・
「MVの方ではそのようなプラグインがあるみたい」が具体的に分かると返答しやすいです。

JSONを直接編集するのは、正直(特に初心者には)お勧めできません。

非常用の例として下記のまとめがあります。

RPGツクールMVファイル名変更作業json編集編
https://fungamemake.com/archives/3067
※タイトルにMVとありますが、MZも同じ構造です。

「文章の表示」コマンドが保存されそうな場所は下記2つになると思います。
1.マップ上のイベント
2.コモンイベント

一般的には1.が多いでしょうから、こちらを例にします。

マップ上のイベントですから、データは下記にあります。
プロジェクト/data/Map001.json からマップ数分だけあります。
削除したりすると番号が連番にならないので、場合によっては001はないかもしれません。

デフォルト(背景:ウィンドウ、ウィンドウ位置:下)で指定すると、mapのJSONには下記のように保存されます。
UTF-8が使えるテキストエディタで開くと確認できます。

背景:ウィンドウ、ウィンドウ位置:下(デフォルト)
"list":[{"code":101,"indent":0,"parameters":["",0,0,2,""]}

背景:暗くする、ウィンドウ位置:中
"list":[{"code":101,"indent":0,"parameters":["",0,1,1,""]}

背景:透明、ウィンドウ位置:上
"list":[{"code":101,"indent":0,"parameters":["",0,2,0,""]}

見比べれば分かると思いますが、parameters内で下記のように指定されています。
背景
ウィンドウ:0
暗くする:1
透明:2

位置
上:0
中:1
下:2

これらから、JSONをテキストエディタで開いて「置換」機能を使用し、
parameters":["",0,0,2,""]

parameters":["",0,2,2,""]
に置換することで、エディタ上で変更したのと同じ効果があるはずです。

必ず、ツクールを終了した状態で、バックアップを取ってから行ってください。

なお、上記の例は名前や顔画像を指定していないので、それらが入った文章の表示となると、更に複雑になります。
ここからは、上記を手がかりにご自身でJSONを見てください。


この説明で「もっと詳しく」と感じた場合、JSONを直接編集するスキルには到達していないと予想できますので、止めたほうが良いです。
この場合、ウィンドウ表示を指定できるプラグインの作成依頼したほうが妥当と思います。

全ての文章の表示の背景を「透明」にするだけという仕様でしたら、下記プラグインで実現できます。
代わりに、ウィンドウや暗くするも全て透明になります。

プラグインの著作権は放棄します

コード: 全て選択

(() => {
    "use strict";

    const _Game_Interpreter_command101 = Game_Interpreter.prototype.command101;
    Game_Interpreter.prototype.command101 = function (params) {
        _Game_Interpreter_command101.apply(this, arguments);
        $gameMessage.setBackground(2);
    };

})();
messageBackClear.js
(294 バイト) ダウンロード数: 12 回

追記
もしかして、下記のプラグインのことでしょうか?<「MVの方ではそのようなプラグインがあるみたい」

▼メッセージウィンドウ背景デフォルト指定(蔦森くいな様作) - MessageBackGroundStd.js
https://plugin.fungamemake.com/archives/13002
「文章の表示」コマンドで表示されるメッセージウィンドウの背景はデフォルトで「ウィンドウ」が指定されていますが、これを強制的に変更します。

この仕様で良ければ、上記を少しいじるだけで実現できますが、作りましょうか?

追記2

作ってみたら、上記とほぼ同じものになっていました。
試しに上記のMVプラグインを使用したところ、MZでも動作しました。
なので…公開するかは微妙な感じになりました(笑)
---
JavaScriptの基本を学習せずにツクールのプラグインやスクリプトを使って横着してゲームを作ろうとしている人間です。
そのような者なので、適当な投稿をするかも知れません。
他の方の投稿を信用してください。
たんべ
記事: 7
登録日時: 2020年12月18日(金) 19:26

Re: 文章のウィンドウを一括で透明に

投稿記事 by たんべ »

ご返信ありがとうございます!
「MVの方ではそのようなプラグインがあるみたい」と言ったのはつまりそういうことでした。
早速プラグインを使用してみましたが、実際に背景が透明になりました
わざわざ用意して下さり本当にありがとうございました!

JSONファイルは、バックアップをとって練習がてらいじってみたいと思います。
返信する

“MZ:質問”に戻る