【解決済み】プラグイン「並び替えシーン(やな様作) - SceneFormation.js」のステータス表示について

なっぱ
記事: 80
登録日時: 2015年11月19日(木) 20:19

【解決済み】プラグイン「並び替えシーン(やな様作) - SceneFormation.js」のステータス表示について

投稿記事by なっぱ » 2024年11月29日(金) 12:24

【使用プラグイン】
➀「不要なステータス項目・不要なバトルコマンドを削除」(奏ねこま(おとぶきねこま)様作) - ExcludeStatus.js
https://plugin.fungamemake.com/archives/19475 (ツクプラの紹介記事へのリンクです)

②「並び替えシーン」(やな様作) - SceneFormation.js
https://plugin.fungamemake.com/archives/2061 (ツクプラの紹介記事へのリンクです)

【目的】
プラグイン②「並び替えシーン」のステータス画面に魔法防御を表示しない。

【現状】
「魔法防御」の値を使用しないため、プラグイン➀「不要なステータス項目削除」で魔法防御を非表示にしているのですが、
プラグイン②「並び替えシーン」のパーティー編成シーンでアクターのステータスが表示された時、魔法防御が表示されてしまいます。

プラグイン②でも魔法防御を非表示にすることはできないでしょうか?
viewtopic.php?t=9384
上記のトピックで似たような状況を解決されているようなのですが、パッチのリンクが使えませんでした。

もし解決方法が分かる方いらっしゃいましたら、お願いします。

※追記
メニュー及びパーティー編成時の魔法防御が非表示になればいいので、プラグイン➀の使用にこだわりはありません。
最後に編集したユーザー なっぱ on 2024年11月30日(土) 16:01 [ 編集 1 回目 ]

ecf5DTTzl6h6lJj02
記事: 606
登録日時: 2018年12月23日(日) 13:55

Re: プラグイン「並び替えシーン(やな様作) - SceneFormation.js」のステータス表示について

投稿記事by ecf5DTTzl6h6lJj02 » 2024年11月29日(金) 19:22

こんにちは。
なっぱ さんが書きました:【使用プラグイン】
➀「不要なステータス項目・不要なバトルコマンドを削除」(奏ねこま(おとぶきねこま)様作) - ExcludeStatus.js
https://plugin.fungamemake.com/archives/19475 (ツクプラの紹介記事へのリンクです)

②「並び替えシーン」(やな様作) - SceneFormation.js
https://plugin.fungamemake.com/archives/2061 (ツクプラの紹介記事へのリンクです)

【目的】
プラグイン②「並び替えシーン」のステータス画面に魔法防御を表示しない。

【現状】
「魔法防御」の値を使用しないため、プラグイン➀「不要なステータス項目削除」で魔法防御を非表示にしているのですが、
プラグイン②「並び替えシーン」のパーティー編成シーンでアクターのステータスが表示された時、魔法防御が表示されてしまいます。

プラグイン②でも魔法防御を非表示にすることはできないでしょうか?
viewtopic.php?t=9384
上記のトピックで似たような状況を解決されているようなのですが、パッチのリンクが使えませんでした。

もし解決方法が分かる方いらっしゃいましたら、お願いします。

※追記
メニュー及びパーティー編成時の魔法防御が非表示になればいいので、プラグイン➀の使用にこだわりはありません。

ExcludeStatus.js の方に、改変が必要です。

ExcludeStatus.js ファイルのバックアップを取り、
ExcludeStatus.js をJavaScript を編集できるソフトで開いて、
以下の変更を行ってください。

  • ファイルの末尾、

    コード: 全て選択

    }());

    となっているところの前に、以下のコードを追加してください。

    コード: 全て選択

        if ($plugins.some(plugin => plugin.name === 'SceneFormation' && plugin.status)) {

            // 必要なプラグインパラメータがあるので、読み込む
            const statusBlockWidth = Number(PluginManager.parameters('SceneFormation')['Status Block Width']) || 372;

            Window_FormationStatus.prototype.drawParameters = function(x, y) {
                const blockWidth = statusBlockWidth / 2 - 6;
                const paramWidth = blockWidth / 3;
                const needsDrawingParamIndices = [...Array(6).keys()].filter(paramIndex => !ExcludeStatus.some(excludeIndex => paramIndex + 1 === Number(excludeIndex)));
                needsDrawingParamIndices.forEach((paramIndex, arrayIndex) => {
                    const paramId = paramIndex + 2;
                    const y2 = y + 32 * (arrayIndex % 3);
                    const x2 = x + Math.floor(arrayIndex / 3) * blockWidth;
                    this.changeTextColor(this.systemColor());
                    this.drawText(TextManager.param(paramId), x2 + (12 * Math.floor(arrayIndex / 3)), y2, paramWidth * 2);
                    this.resetTextColor();
                    this.drawText(this._actor.param(paramId), x2 + paramWidth * 2 + (12 * Math.floor(arrayIndex / 3)), y2, paramWidth, 'right');
                });
            };
        }
ExcludeStatus が SceneFormation よりも後ろに来るように、プラグイン管理画面で配置してください。

以上、ご確認お願いします。
なっぱ
記事: 80
登録日時: 2015年11月19日(木) 20:19

Re: プラグイン「並び替えシーン(やな様作) - SceneFormation.js」のステータス表示について

投稿記事by なっぱ » 2024年11月30日(土) 01:18

ecf5DTTzl6h6lJj02 さんが書きました:こんにちは。
なっぱ さんが書きました:【使用プラグイン】
➀「不要なステータス項目・不要なバトルコマンドを削除」(奏ねこま(おとぶきねこま)様作) - ExcludeStatus.js
https://plugin.fungamemake.com/archives/19475 (ツクプラの紹介記事へのリンクです)

②「並び替えシーン」(やな様作) - SceneFormation.js
https://plugin.fungamemake.com/archives/2061 (ツクプラの紹介記事へのリンクです)

【目的】
プラグイン②「並び替えシーン」のステータス画面に魔法防御を表示しない。

【現状】
「魔法防御」の値を使用しないため、プラグイン➀「不要なステータス項目削除」で魔法防御を非表示にしているのですが、
プラグイン②「並び替えシーン」のパーティー編成シーンでアクターのステータスが表示された時、魔法防御が表示されてしまいます。

プラグイン②でも魔法防御を非表示にすることはできないでしょうか?
viewtopic.php?t=9384
上記のトピックで似たような状況を解決されているようなのですが、パッチのリンクが使えませんでした。

もし解決方法が分かる方いらっしゃいましたら、お願いします。

※追記
メニュー及びパーティー編成時の魔法防御が非表示になればいいので、プラグイン➀の使用にこだわりはありません。

ExcludeStatus.js の方に、改変が必要です。

ExcludeStatus.js ファイルのバックアップを取り、
ExcludeStatus.js をJavaScript を編集できるソフトで開いて、
以下の変更を行ってください。

  • ファイルの末尾、

    コード: 全て選択

    }());

    となっているところの前に、以下のコードを追加してください。

    コード: 全て選択

        if ($plugins.some(plugin => plugin.name === 'SceneFormation' && plugin.status)) {

            // 必要なプラグインパラメータがあるので、読み込む
            const statusBlockWidth = Number(PluginManager.parameters('SceneFormation')['Status Block Width']) || 372;

            Window_FormationStatus.prototype.drawParameters = function(x, y) {
                const blockWidth = statusBlockWidth / 2 - 6;
                const paramWidth = blockWidth / 3;
                const needsDrawingParamIndices = [...Array(6).keys()].filter(paramIndex => !ExcludeStatus.some(excludeIndex => paramIndex + 1 === Number(excludeIndex)));
                needsDrawingParamIndices.forEach((paramIndex, arrayIndex) => {
                    const paramId = paramIndex + 2;
                    const y2 = y + 32 * (arrayIndex % 3);
                    const x2 = x + Math.floor(arrayIndex / 3) * blockWidth;
                    this.changeTextColor(this.systemColor());
                    this.drawText(TextManager.param(paramId), x2 + (12 * Math.floor(arrayIndex / 3)), y2, paramWidth * 2);
                    this.resetTextColor();
                    this.drawText(this._actor.param(paramId), x2 + paramWidth * 2 + (12 * Math.floor(arrayIndex / 3)), y2, paramWidth, 'right');
                });
            };
        }
ExcludeStatus が SceneFormation よりも後ろに来るように、プラグイン管理画面で配置してください。

以上、ご確認お願いします。


ecf5DTTzl6h6lJj02様、いつもありがとうございます。

多分私のやり方が間違っているせいだと思うのですが、上手くいきませんでした。
プラグインを➀「SceneFormation」②「ExcludeStatus」の順に2つだけ導入し、
②のプラグインパラメータを"4"に設定(魔法防御を非表示)し、
教えていただいたコードを「ExcludeStatus.js」の下から2行目に張り付けましたが、
テストしたところ②が機能しておらず、元々非表示になっていた通常のステータス画面の魔法防御も表示されてしまいました。

設定がどこか間違っているのかと思うのですが、自己解決できなかったのでアドバイスいただけないでしょうか?
ecf5DTTzl6h6lJj02
記事: 606
登録日時: 2018年12月23日(日) 13:55

Re: プラグイン「並び替えシーン(やな様作) - SceneFormation.js」のステータス表示について

投稿記事by ecf5DTTzl6h6lJj02 » 2024年11月30日(土) 03:05

こんにちは。
なっぱ さんが書きました:
ecf5DTTzl6h6lJj02様、いつもありがとうございます。

多分私のやり方が間違っているせいだと思うのですが、上手くいきませんでした。
プラグインを➀「SceneFormation」②「ExcludeStatus」の順に2つだけ導入し、
②のプラグインパラメータを"4"に設定(魔法防御を非表示)し、
教えていただいたコードを「ExcludeStatus.js」の下から2行目に張り付けましたが、
テストしたところ②が機能しておらず、元々非表示になっていた通常のステータス画面の魔法防御も表示されてしまいました。

設定がどこか間違っているのかと思うのですが、自己解決できなかったのでアドバイスいただけないでしょうか?

きちんと確認しないで、返信を送信してしまい、書き忘れてしまっている部分がありました。
大変失礼しました。

まず、ツクプラの紹介ページの、直接ダウンロードの Zipファイルは、
バージョンが 1.092 で古いです。
ダウンロードページからダウンロードできるファイルは 1.097 なので、
そちらを使用してください。
バージョンが1.093以上でないと、
SceneFormation で使用しているステータス表示用のウィンドウのクラスに対して、
ExcludeStatus 側で変更を加えられないので、
エラーになって、ExcludeStatus が無効化されてしまいます。

また、ScemeFomation のバージョンが 1.097 には、
YEP_BattleEngineCore が入っていないと、
動きはするけれど、デバッグ画面(Developper Tools)にはエラーがでる不具合があるので、
以下の部分に修正を加えてください。
  • コード: 全て選択

    if (Imported['YEP_BattleEngineCore']){

    という部分がある(こちらの手持ちのファイルでは 1330 行目にある)ので、
    これを

    コード: 全て選択

    if ($plugins.some(plugin => plugin.name === 'YEP_BattleEngineCore' && plugin.status)) {

    に変更する。

以上で、きちんと表示されるようになるかなと思います。
ご確認ください。
なっぱ
記事: 80
登録日時: 2015年11月19日(木) 20:19

Re: プラグイン「並び替えシーン(やな様作) - SceneFormation.js」のステータス表示について

投稿記事by なっぱ » 2024年11月30日(土) 08:37

ecf5DTTzl6h6lJj02 さんが書きました:こんにちは。
なっぱ さんが書きました:
ecf5DTTzl6h6lJj02様、いつもありがとうございます。

多分私のやり方が間違っているせいだと思うのですが、上手くいきませんでした。
プラグインを➀「SceneFormation」②「ExcludeStatus」の順に2つだけ導入し、
②のプラグインパラメータを"4"に設定(魔法防御を非表示)し、
教えていただいたコードを「ExcludeStatus.js」の下から2行目に張り付けましたが、
テストしたところ②が機能しておらず、元々非表示になっていた通常のステータス画面の魔法防御も表示されてしまいました。

設定がどこか間違っているのかと思うのですが、自己解決できなかったのでアドバイスいただけないでしょうか?

きちんと確認しないで、返信を送信してしまい、書き忘れてしまっている部分がありました。
大変失礼しました。

まず、ツクプラの紹介ページの、直接ダウンロードの Zipファイルは、
バージョンが 1.092 で古いです。
ダウンロードページからダウンロードできるファイルは 1.097 なので、
そちらを使用してください。
バージョンが1.093以上でないと、
SceneFormation で使用しているステータス表示用のウィンドウのクラスに対して、
ExcludeStatus 側で変更を加えられないので、
エラーになって、ExcludeStatus が無効化されてしまいます。

また、ScemeFomation のバージョンが 1.097 には、
YEP_BattleEngineCore が入っていないと、
動きはするけれど、デバッグ画面(Developper Tools)にはエラーがでる不具合があるので、
以下の部分に修正を加えてください。
  • コード: 全て選択

    if (Imported['YEP_BattleEngineCore']){

    という部分がある(こちらの手持ちのファイルでは 1330 行目にある)ので、
    これを

    コード: 全て選択

    if ($plugins.some(plugin => plugin.name === 'YEP_BattleEngineCore' && plugin.status)) {

    に変更する。

以上で、きちんと表示されるようになるかなと思います。
ご確認ください。


ecf5DTTzl6h6lJj02様、ご対応ありがとうございます。

大変申し訳ないのですが、なぜか機能しません。
前回の設定に加え、
・本体のバージョン:1.6.3を確認
・ScemeFomation のバージョン: 1.097を確認
・「ScemeFomation」に修正
をしました。

そもそも修正を加えた「ExcludeStatus.js」が単体で機能していなかったので、そちらの問題かと思ったのですが、最後から2行目に
if ($plugins.some(plugin => plugin.name === 'SceneFormation' && plugin.status)) {

// 必要なプラグインパラメータがあるので、読み込む
const statusBlockWidth = Number(PluginManager.parameters('SceneFormation')['Status Block Width']) || 372;

Window_FormationStatus.prototype.drawParameters = function(x, y) {
const blockWidth = statusBlockWidth / 2 - 6;
const paramWidth = blockWidth / 3;
const needsDrawingParamIndices = [...Array(6).keys()].filter(paramIndex => !ExcludeStatus.some(excludeIndex => paramIndex + 1 === Number(excludeIndex)));
needsDrawingParamIndices.forEach((paramIndex, arrayIndex) => {
const paramId = paramIndex + 2;
const y2 = y + 32 * (arrayIndex % 3);
const x2 = x + Math.floor(arrayIndex / 3) * blockWidth;
this.changeTextColor(this.systemColor());
this.drawText(TextManager.param(paramId), x2 + (12 * Math.floor(arrayIndex / 3)), y2, paramWidth * 2);
this.resetTextColor();
this.drawText(this._actor.param(paramId), x2 + paramWidth * 2 + (12 * Math.floor(arrayIndex / 3)), y2, paramWidth, 'right');
});
};
}

を張り付けるで合っていますか?
ecf5DTTzl6h6lJj02
記事: 606
登録日時: 2018年12月23日(日) 13:55

Re: プラグイン「並び替えシーン(やな様作) - SceneFormation.js」のステータス表示について

投稿記事by ecf5DTTzl6h6lJj02 » 2024年11月30日(土) 13:27

なっぱ さんが書きました:ecf5DTTzl6h6lJj02様、ご対応ありがとうございます。

大変申し訳ないのですが、なぜか機能しません。
前回の設定に加え、
・本体のバージョン:1.6.3を確認
・ScemeFomation のバージョン: 1.097を確認
・「ScemeFomation」に修正
をしました。

そもそも修正を加えた「ExcludeStatus.js」が単体で機能していなかったので、そちらの問題かと思ったのですが、最後から2行目に
if ($plugins.some(plugin => plugin.name === 'SceneFormation' && plugin.status)) {

// 必要なプラグインパラメータがあるので、読み込む
const statusBlockWidth = Number(PluginManager.parameters('SceneFormation')['Status Block Width']) || 372;

Window_FormationStatus.prototype.drawParameters = function(x, y) {
const blockWidth = statusBlockWidth / 2 - 6;
const paramWidth = blockWidth / 3;
const needsDrawingParamIndices = [...Array(6).keys()].filter(paramIndex => !ExcludeStatus.some(excludeIndex => paramIndex + 1 === Number(excludeIndex)));
needsDrawingParamIndices.forEach((paramIndex, arrayIndex) => {
const paramId = paramIndex + 2;
const y2 = y + 32 * (arrayIndex % 3);
const x2 = x + Math.floor(arrayIndex / 3) * blockWidth;
this.changeTextColor(this.systemColor());
this.drawText(TextManager.param(paramId), x2 + (12 * Math.floor(arrayIndex / 3)), y2, paramWidth * 2);
this.resetTextColor();
this.drawText(this._actor.param(paramId), x2 + paramWidth * 2 + (12 * Math.floor(arrayIndex / 3)), y2, paramWidth, 'right');
});
};
}

を張り付けるで合っていますか?

ScemeFomation と書いてしまったのは 打ち間違えで、SceneFormation が正しいです。
名前を変更してしまうと、SceneFormation がプラグインパラメータを読み込めなくなってしまいますし、
ExcludeStatus でも 並び替えシーンが導入されていないものとして扱ってしまうので、
元の名前に戻してください。
夜中とか、寝起きに返信してたりするので、打ち間違えとか結構してます。
そのあたりは察していただけると助かります。
失礼しました。

ExcludeStatus.js の変更の方は、
最後(末尾)から2行目に貼り付けるというか、
書いた通り、

コード: 全て選択

}());

となっている前の行に挿入されている―――
001.jpg

これは、VSCode で表示した際の画面ですが、
このような感じになっているならあっているはずですが、
単体でも動いていない(メニュー画面でも、魔法防御のパラメータが表示される)ということなので、
何かエラーが発生して、ExcludeStatus が無効化されてしまっているのだと思います。

このエラー内容を確認したいので、
ゲームを起動したら、
F8 もしくは F12 を押して、Developer Tools というウィンドウを表示させてください。
このウィンドウの console というタブの画面に、
エラー内容が表示されるはずなので、
スクリーンショットを撮って、画像をアップしてください。

よろしくお願いします。
なっぱ
記事: 80
登録日時: 2015年11月19日(木) 20:19

Re: プラグイン「並び替えシーン(やな様作) - SceneFormation.js」のステータス表示について

投稿記事by なっぱ » 2024年11月30日(土) 16:00

ecf5DTTzl6h6lJj02様、お忙しいところご対応ありがとうございました。

問題が解決しましたのでご報告します。
原因は、ExcludeStatus.jsに加筆した際、
忘れないようにとファイル名を「ExcludeStatus_old.js」「ExcludeStatus_new.js」等と
勝手に変えてしまったからでした。
元々機能していた古い方に戻してもプラグインが機能しておらず、
また先程の返信で「名前を変えてしまうと~」の説明が合ったので気付くことができました。
お手数をおかけして申し訳ありませんでした。

無事解決することができました。どうもありがとうございました。

“MV:質問” へ戻る