ページ 11

【解決済】戦闘時のスキルメニューに"アイテム(使用)"を追加するには?

Posted: 2021年7月18日(日) 18:29
by MiyaYuki
表題の通りです。

戦闘時のパーティメニュー(戦う/逃げる)とアクターメニュー(攻撃/防御/スキル/アイテム・・・)を
スキップして、いきなりスキルメニューで全ての行動を選択するシステムを作っています。

スキルメニューの中で(バトル)アイテム使用を選択できるようにしたいのですが、
どのように実現したらよいのかわからず困っています。
アドバイス等いただけると幸いです。

こちらで考えたのは、
・「アイテム使用」スキルを作り選択時はコモンイベントを実行する
・そのコモンイベント内で"戦闘シーン用のアイテム使用スクリプト"を実行する
という感じなのですが、肝心の
"戦闘シーン用のアイテム使用スクリプト"
をどのように書けばよいのかわかりません。

ご教授いただけると幸いです。

Re: 戦闘時のスキルメニューに"アイテム(使用)"を追加するには?

Posted: 2021年7月18日(日) 21:10
by WTR
MiyaYuki さんが書きました:肝心の
"戦闘シーン用のアイテム使用スクリプト"
をどのように書けばよいのかわかりません。
どのように書けば、じゃなくてそれが何なのかがわかりません。
方法の話に行く前に、何がしたいのかが大事です。

Re: 戦闘時のスキルメニューに"アイテム(使用)"を追加するには?

Posted: 2021年7月18日(日) 23:02
by MiyaYuki
説明不足、申し訳ありません。
スキルメニューの中にアクターメニューの「アイテム」と
同等のコマンドを作りたいということです。
画像を参照していただければと思います。

Re: 戦闘時のスキルメニューに"アイテム(使用)"を追加するには?

Posted: 2021年7月19日(月) 00:12
by WTR
スキル アイテム使用を選択したら
スキル選択ウィンドウを閉じて、アイテム選択ウィンドウを開く であってるでしょうか

スキル使用効果のコモンイベントでは難しいかと思います。
コモンイベントはスキルを選択した時点で実行されるわけではなく
アクターの行動順が回ってきて実際にスキルが発動したときに実行されるので
その時点ではもう入力フェーズは終了しています。
無理やり入力フェーズに戻すとややこしいことになりそうなのでやりたくないし、そもそも変な挙動になるのは避けられない。

ということで私ならScene_Battleをちょっと弄ります。
↓ スキルID 11 (適当に割り当てました) を使用するとアイテム選択に遷移します。

コード: 全て選択

(() => {
	"use strict";
	//=============================================================================
	// Scene_Battle
	//=============================================================================
	const _Scene_Battle_onSkillOk = Scene_Battle.prototype.onSkillOk;
	Scene_Battle.prototype.onSkillOk = function() {
		const skill = this._skillWindow.item();
		if (skill.id === 11) { // アイテム使用のスキルID
			this.onSkillCancel();
			this.commandItem();
			this._actorCommandWindow.deactivate();
		} else {
			_Scene_Battle_onSkillOk.call(this);
		}
	};

	Scene_Battle.prototype.onItemCancel = function() {
		this._itemWindow.hide();
		this.commandSkill();
	};
})();

Re: 戦闘時のスキルメニューに"アイテム(使用)"を追加するには?

Posted: 2021年7月19日(月) 22:50
by MiyaYuki
なるほどアクターメニューの「アイテム」を
下位のウィンドウから実行するのはかなり難しいのですね。

シーンを弄るのは、できるだけやりたくないのですが、
教えていただいた事を参考に自分でも少し考えてみます。ありがとうございます。

Re: 戦闘時のスキルメニューに"アイテム(使用)"を追加するには?

Posted: 2021年7月25日(日) 21:49
by MiyaYuki
>WTRさん

その後、色々と調べてみたのですが、やはりWTRさんの提示してくださった解決策が
よさそうだと感じ、シーンを修正してみたところドンピシャで欲しい機能が実現できました。

シーン変更に抵抗がありましたが、動作にも問題がなさそうで安心しました。
とても助かりました。ありがとうございます。