【解決済み】アイテムウィンドウのokハンドラを外す処理

アバター
MEIKOI
記事: 168
登録日時: 2018年9月22日(土) 20:13
連絡を取る:

【解決済み】アイテムウィンドウのokハンドラを外す処理

投稿記事by MEIKOI » 2021年5月29日(土) 01:01

こんにちは!いつもお世話になってます。

アイテムシーンからアイテムが使えないようにしたいです。

マンカインド様のアイテムスロットプラグインを使っているので
基本マップ上でスロットからアイテムは使うので、アイテムシーンからは使えないようにしたいのです。
ただ、持っているアイテムは確認する必要があるのでアイテムシーンは残しておかなければなりません。
(逆に言えば、アイテム数の確認画面が自作できるスキルがあればアイテムシーンは無くても良いのですが^^;)

アイテムシーンでは、アイテムを選択するとアクターを選ぶウィンドが開くと思うのですが
その前で処理を遮断する形でいいんじゃないかと思いコアスクリプトを眺めてましたが
やっぱり一日終わってしまいました。

こうすればいいよっていう事があれば、教えていただけると助かります。
よろしくお願いします。
最後に編集したユーザー MEIKOI on 2021年5月29日(土) 07:10 [ 編集 1 回目 ]

名無し蛙
記事: 304
登録日時: 2015年11月23日(月) 02:46

Re: 「アイテムシーンでのアイテム使用の可否」をスイッチで切り替え

投稿記事by 名無し蛙 » 2021年5月29日(土) 02:27

こんばんは
MEIKOI さんが書きました:アイテムシーンでは、アイテムを選択するとアクターを選ぶウィンドが開くと思うのですが
その前で処理を遮断する形でいいんじゃないかと思いコアスクリプトを眺めてましたが
やっぱり一日終わってしまいました。

タイトルから無関係になりますけど
これだけで良いのならアイテムウィンドウのokハンドラを外すだけで良いのでは

コード: 全て選択

(() => {
    'use strict'
    const _Scene_Item_createItemWindow = Scene_Item.prototype.createItemWindow;
    Scene_Item.prototype.createItemWindow = function() {
        _Scene_Item_createItemWindow.apply(this, arguments);
        delete this._itemWindow._handlers['ok']
    };
})();

setHandler自体を削除しても良いんですけどこれが最小限の変更かなと
アバター
MEIKOI
記事: 168
登録日時: 2018年9月22日(土) 20:13
連絡を取る:

Re: 「アイテムシーンでのアイテム使用の可否」をスイッチで切り替え

投稿記事by MEIKOI » 2021年5月29日(土) 07:08

名無し蛙 様

こんにちは。いつも教えて頂いてありがとうございます!

okハンドラを削除して頂いたプラグインで必要な動作になりました。

ありがとうございます!タイトルは、変えておきますね。

削除とかできるんですね、いつも勉強になりますm(_ _)m

“MV:質問” へ戻る