【解決】独自のアイテムカテゴリを直接開く方法

返信する
アバター
mikan
記事: 18
登録日時: 2018年5月06日(日) 20:27

【解決】独自のアイテムカテゴリを直接開く方法

投稿記事 by mikan »

Tomoaky様のTM アイテムカテゴリ拡張 - TMItemCategoryEx.jsを使用しております。
https://plugin-mz.fungamemake.com/archives/1485

このプラグインで作成した独自のアイテムカテゴリを、スクリプト等で直接開く方法が知りたいです。
具体的には、アイテム使用→コモンイベント後にカテゴリ選択中のウインドウに戻るという処理にしたいです。
解決方法がわかる方がいらっしゃいましたら、よろしくお願いいたします。
最後に編集したユーザー mikan [ 2024年9月14日(土) 17:28 ], 累計 1 回
アバター
ムノクラ
記事: 2118
登録日時: 2018年2月23日(金) 11:41
連絡する:

Re: 独自のアイテムカテゴリを直接開く方法

投稿記事 by ムノクラ »

mikan さんが書きました:Tomoaky様のTM アイテムカテゴリ拡張 - TMItemCategoryEx.jsを使用しております。
https://plugin-mz.fungamemake.com/archives/1485

このプラグインで作成した独自のアイテムカテゴリを、スクリプト等で直接開く方法が知りたいです。
具体的には、アイテム使用→コモンイベント後にカテゴリ選択中のウインドウに戻るという処理にしたいです。
解決方法がわかる方がいらっしゃいましたら、よろしくお願いいたします。
おそらく、下記のプラグインで実現できると思います。

▼NUUN アイテム、スキルの使用効果でコモンイベント実行で画面を閉じない(NUUN様作) - NUUN_ContinuationItemWindowCommon.js
https://plugin-mz.fungamemake.com/archives/5741
---
JavaScriptの基本を学習せずにツクールのプラグインやスクリプトを使って横着してゲームを作ろうとしている人間です。
そのような者なので、適当な投稿をするかも知れません。
他の方の投稿を信用してください。
アバター
mikan
記事: 18
登録日時: 2018年5月06日(日) 20:27

Re: 独自のアイテムカテゴリを直接開く方法

投稿記事 by mikan »

解決策のご提示、どうもありがとうございます!
プラグインを導入してみたところ、アイテム使用後に何も起こらない→アイテム欄を閉じるとコモンイベント発動、という順序になってしまいました。

メッセージウインドウやピクチャを使用するコモンイベントのため、アイテム使用で一旦アイテム欄を閉じる→コモンイベント処理後に再表示、という形が理想には近いです。
現在はコモンイベント末尾に SceneManager.push(Scene_Item); を記述しており、使用後にアイテム欄のトップには戻れるようになっています。
最低限これでも良いのですが、アイテム使用時の画面(カテゴリ選択後のアイテム欄)にジャンプできたら操作性がより良くなると感じています。
アバター
ムノクラ
記事: 2118
登録日時: 2018年2月23日(金) 11:41
連絡する:

Re: 独自のアイテムカテゴリを直接開く方法

投稿記事 by ムノクラ »

mikan さんが書きました:解決策のご提示、どうもありがとうございます!
プラグインを導入してみたところ、アイテム使用後に何も起こらない→アイテム欄を閉じるとコモンイベント発動、という順序になってしまいました。

メッセージウインドウやピクチャを使用するコモンイベントのため、アイテム使用で一旦アイテム欄を閉じる→コモンイベント処理後に再表示、という形が理想には近いです。
現在はコモンイベント末尾に SceneManager.push(Scene_Item); を記述しており、使用後にアイテム欄のトップには戻れるようになっています。
最低限これでも良いのですが、アイテム使用時の画面(カテゴリ選択後のアイテム欄)にジャンプできたら操作性がより良くなると感じています。
自分が挑戦して、頓挫したものに近いようですね。
viewtopic.php?f=23&t=15037&p=54256

ちょっとややこしいですし、MV向けですが下記が参考になるかも知れません。
viewtopic.php?t=10938

また、下記プラグインでメッセージウィンドウをアイテムシーンに追加したら、解決するかも知れません。
▼DarkPlasma 指定のシーンにメッセージウィンドウを表示させる(DarkPlasma様作) - DarkPlasma_Scene_MessageMixIn.js
https://plugin-mz.fungamemake.com/archives/5120
指定したシーンにメッセージウィンドウを表示できるようになります。
---
JavaScriptの基本を学習せずにツクールのプラグインやスクリプトを使って横着してゲームを作ろうとしている人間です。
そのような者なので、適当な投稿をするかも知れません。
他の方の投稿を信用してください。
名無し蛙
記事: 352
登録日時: 2015年11月23日(月) 02:46

Re: 独自のアイテムカテゴリを直接開く方法

投稿記事 by 名無し蛙 »

2年前にも似たような質問に答えた記憶がありますね。
3年前にプラグイン化は不可避と書いた事は訂正します。
今回のトピックに合わせて最適化するならこんな感じですか。

コード: 全て選択

// TMItemCategoryExのプラグインパラメータ:categoryListから指定してください
const categorySymbol = 'weapon';

SceneManager.push(Scene_Item);
SceneManager._stack.push(new Scene_Menu().constructor);
SceneManager._nextScene._oldStart = SceneManager._nextScene.start;
SceneManager._nextScene.start = function() {
    this._oldStart.apply(this, arguments);
    this._categoryWindow.selectSymbol(categorySymbol); 
    this._categoryWindow.update();
    this.onCategoryOk();
    this._categoryWindow.deactivate();
}
このコードを使用効果:コモンイベントの末尾に書けば
アイテム画面に指定のカテゴリ欄を開いた状態で戻ります。

※当該アイテムを使用した後に
アイテム画面をキャンセルした時にマップ画面に直接戻ってしまうのでコード修正しました
アバター
mikan
記事: 18
登録日時: 2018年5月06日(日) 20:27

Re: 独自のアイテムカテゴリを直接開く方法

投稿記事 by mikan »

ムノクラ様、名無し蛙様、
解決策のご提示ありがとうございます!

名無し蛙様の上記のスクリプトをコモンイベント末尾に記述したところ、無事に想定通りの動作にすることができました。
ムノクラ様に教えていただいたプラグインも今後の制作の参考にさせて頂きます!
自分が考えていたよりも複雑な処理だったようで、大変お手数をおかけしました。

このスレッドは解決とさせていただきます。
お力添え頂きどうもありがとうございました!
返信する

“MZ:質問”に戻る