ページ 1 / 1
【解決済み】マップ上で戦闘不能時に表示される文章を非表示
Posted: 2023年12月09日(土) 19:15
by RAPAGA
いつもお世話になっております。
マップ上で、ダメージ床などでアクターが戦闘不能になった場合に、
「~が倒れた」といった文章が表示されますが、これ自体を表示しないようにしたいです。
すみません、プラグインのどのあたりを触ればよいかご教授いただけないでしょうか。
よろしくお願いします。
Re: マップ上で戦闘不能時に表示される文章を非表示
Posted: 2023年12月10日(日) 13:40
by 名無し蛙
rmmz_objects.jsの4783行目
コード: 全て選択
Game_Actor.prototype.showAddedStates = function() {
for (const state of this.result().addedStateObjects()) {
if (state.message1) {
$gameMessage.add(state.message1.format(this._name));
}
}
};
ここで該当処理を行っています。
厳密に言えばプレイヤが一歩移動した時にステートの付与が発生した場合
当該ステートの「アクターがこの状態になった時」のテキストが表示されます。
なのでここを空にするだけで変更出来ると思いますね。
デフォルトではダメージ床でhpが0になった時とステートのスリップダメージで戦闘不能になった時以外
ステートが付与されるケースは無いと思いますけど
どうしても戦闘不能だけ除外したい場合はfilterを掛ける等で部分的に対処した方が良いでしょう。
コード: 全て選択
// ステート表示機構の無効化
Game_Actor.prototype.showAddedStates = () => {};
// 戦闘不能ステートだけ除外する場合
Game_Actor.prototype.showAddedStates = function() {
this.result()
.addedStateObjects()
.filter(state => state.id !== this.deathStateId())
.filter(state => state.message1)
.forEach(state => $gameMessage.add(state.message1.format(this._name)));
};
※MVとMZを見違えていたので修正しました
Re: マップ上で戦闘不能時に表示される文章を非表示
Posted: 2023年12月11日(月) 01:42
by RAPAGA
名無し蛙様、
ありがとうございます。
お陰様で狙い通りのことが実現できるようになりました。
解決をさせていただきます。