タッチUI:OFFの状態で「ARTM_TMEventItemExMz.js」を使用したときの不具合と応急措置

Telmina

ユーザー
 表題の通り、ArtemisJP様が公開されているプラグイン「ARTM_TMEventItemExMz.js」を、現在βテストプレイ中の自作ゲームで使用しております。
 テストプレイヤー様より、タッチUIがOFFの時に限り、このプラグインを使った機能を使うとゲームがフリーズするとのご報告があり、調べてみたところ、確かにタッチUIがOFFの時だけゲームがフリーズすることを確認できました。

確認した現象(のイメージ)​


 まずは普通にタッチUIがONの状態。プラグインによってアイテム選択欄の機能が拡張されていることを確認できます。

ARTM_TMEventItemExMz_00.pngARTM_TMEventItemExMz_01.pngARTM_TMEventItemExMz_02.pngARTM_TMEventItemExMz_03.pngARTM_TMEventItemExMz_04.png

 ところが、タッチUIをOFFにすると…

ARTM_TMEventItemExMz_05.pngARTM_TMEventItemExMz_06.png

 アイテム欄を出すイベントを発生させたところでゲームがエラー終了してしまいます。

応急措置​


 ソースコードに2行追記し、タッチUIがOFFの時はキャンセルボタンをコピーしないようにしました。

JavaScript:
    const _Window_EventItem_placeCancelButton = Window_EventItem.prototype.placeCancelButton;
    Window_EventItem.prototype.placeCancelButton = function() {
        _Window_EventItem_placeCancelButton.call(this);
        const spacing = 8;
      if (this._cancelButton) {    // ← 追加行
        switch (TMPlugin.EventItemEx.FixPlacement) {
            case "top":
                this.copyCancelButton();
                this._cancelButtonGbl.y = this.y + this.height;
                this._cancelButtonGbl.y += spacing;
                SceneManager._scene.addChild(this._cancelButtonGbl);
                break;
            case "bottom":
                const height = this._cancelButtonGbl.height;
                this.copyCancelButton();
                if (this.isHelpWindowEnabled())
                {
                    this._cancelButtonGbl.y = this._helpWindow.y - height;
                } else {
                    this._cancelButtonGbl.y = this.y - height;
                }
                this._cancelButtonGbl.y -= spacing;
                SceneManager._scene.addChild(this._cancelButtonGbl);
        }
      }    // ← 追加行
    };

応急措置後の動作確認​


 上記の修正をおこなうことで、タッチUIがOFFの時にも問題は発生しなくなりました。

ARTM_TMEventItemExMz_07.pngARTM_TMEventItemExMz_08.pngARTM_TMEventItemExMz_09.png

 しかし、作者様の連絡先が不明なため、本現象についてはまだ作者様には報告できておりません。

 そのため、プラグインに疎い自分としては、本当にこの直し方で良いのかどうかまったく自信がありません。

 識者の方に、是非ともアドバイスを頂戴したいと思います。
 
あ、肝心なことを書き忘れておりました。
RPGツクールMZ Version 1.4.4 で確認しました。
 
Back
トップ