[過去ログ] RPGツクールMZ_4作目 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
267
(2): 名前は開発中のものです。 [sage] 2021/01/11(月) 05:35:58.78 ID:QmsEuk1N(1/5) AAS
>>261
261(2): 名前は開発中のものです。 [sage] 2021/01/11(月) 01:04:51.31 ID:G1hzH2t5(1/2) AAS
ドラクエと言えば魔法使い×4出たとして1体がベギラマ撃ったら他3体はそのターン中ベギラマ撃たないとか裏でこっそり攻撃をセーブしてるよね?
MZでそういう挙動にするのってやっぱ裏でバトルイベント動かしてアイコン表示なしのステート沈黙をこっそり入れるとかで行動制御しないと無理?
2000だとパーティの消耗度によって自動で挙動を変えることができたんだけど
どの手段でも回りくどいな。俺が思い浮かんだものだと
・全体攻撃スキルの使用条件にスイッチ(仮)を指定する
・バトルイベント「バトル」で0ターン目でスイッチ(仮)をONにする
・バトルイベント「ターン」でターン終了時でスイッチ(仮)をONにする
・全体攻撃スキルに使用効果「コモンイベント」で専用のコモンイベントを紐づける
・コモンイベント内でスイッチ(仮)をOFFにする
・コモンイベント内で以下のスクリプトコマンドを実行する

$gameTroop.members().forEach((enemy) => {
if(enemy._actions.length !== 0) {
enemy.makeActions();
}
});

こんなところか
スクリプトは「未行動の敵は行動を考え直す」って内容
283: 名前は開発中のものです。 [sage] 2021/01/11(月) 16:33:07.38 ID:QmsEuk1N(2/5) AAS
>>267のスクリプトコードちょっと訂正で

$gameTroop.members().forEach((enemy) => {
if(enemy.numActions() !== 0) {
enemy.makeActions();
}
});

それ用のメソッドが用意されているとは思ってなかった
外部から_actionsに触れる必要がないならこっちの方が良い
287: 名前は開発中のものです。 [sage] 2021/01/11(月) 18:16:38.61 ID:QmsEuk1N(3/5) AAS
まぁ、それもそうか
元が配列長だしlengthは符号なし32bitで管理している変数だから意識していなかった
290: 名前は開発中のものです。 [sage] 2021/01/11(月) 22:06:54.41 ID:QmsEuk1N(4/5) AAS
前スレの860だっけ?
-2は強制行動時だけだっけ。直接、保存変数から指定するのが無難か

/*: @target MZ */
{
"use strict"
const _startAction = BattleManager.startAction;
BattleManager.startAction = function() {
_startAction.apply(this, arguments);
const subject = this._subject;
const action = subject.currentAction();
if (action.item().meta["chain"]) {
const chainSkillId = Number(action.item().meta["chain"]);
const chainAction = new Game_Action(subject);
chainAction.setSkill(chainSkillId);
chainAction.setTarget(subject._lastTargetIndex); // new!
subject._actions.splice(1, 0, chainAction);
}
};
}
.
これで良いんじゃね
291
(1): 名前は開発中のものです。 [sage] 2021/01/11(月) 23:47:51.96 ID:QmsEuk1N(5/5) AAS
ん?待てよ
そういえばstartActionの時点ではsetLastTargetしてないな
このタイミングだと_lastTargetIndexから持って来るんじゃなくて現在スキルからターゲット持ってきた方が良いのか

×chainAction.setTarget(subject._lastTargetIndex); // new!
〇chainAction.setTarget(action._targetIndex); // new!
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.039s