[過去ログ] 【AI禁止】RPGツクールMZ_32作目 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
824
(1): 02/04(火)00:08 ID:6VDMs/TM(1/3)調 AAS
>>793
ちょっと詰まってるから教えてくれると嬉しい

プログレス戦闘で戦闘コマンドを選んでいるタイミングはどこになるのだろうか?
主人公のコマンドを1つ追加して、

Window_ActorCommand.prototype.processOkの中で、
if (this.currentSymbol() === '追加したコマンド') {
SceneManager._scene.newCommand(); // 追加したコマンドの処理
} else {
_Window_ActorCommand_processOk.call(this); // 本来の処理
}
};

をした場合、

Scene_Battle.prototype.newCommand = function () {
// やりたい処理

// ここから下でターン終了処理にしたい
BattleManager.endAction();
BattleManager._subject = null;
}

BattleManager.endAction();の時点で_subjectがnullでエラーになってしまった
何かの手順をすっ飛ばしているんだろうけど戦闘の流れが理解できてない
837
(1): 02/04(火)20:46 ID:x7TC2q/2(2/5)調 AAS
>>824
改めて見てみたけど、そのエラーが出るのはたぶん「Scene_Battle.prototype.newCommand」の「// やりたい処理」の中で
Game_Battler._actionにデータを入れてないんじゃないかな
Game_Battler._actionにデータが入ってないと、同時並行で走ってるBattleManager.processTurnがなんやかんやで行動終了の処理をしてしまって
先にBattleManager.endAction();とBattleManager._subject = null;を実行しちゃってるんだと思う
だから「Scene_Battle.prototype.newCommand」内でBattleManager.endAction();を呼び出した時にはすでにBattleManager._subjectがnullになってる…っぽい

Game_Battler._actionにデータをいれずに処理してるなら、そもそも「Scene_Battle.prototype.newCommand」の中に
BattleManager.endAction();とBattleManager._subject = null;を記述しなくても勝手に終わると思う
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.038s