Plasma Dark様
ご連絡ありがとうございます。
新規プロジェクトを作成して、
DarkPlasma_PreventMultiDamageSe.jsと
PromptlyPopup.jsを入れて複数匹の戦闘を行い、
全体攻撃を行ってみたところ、やはり敵の人数分、アニメーションが再生されてしまいました。
恐らく誤解があるようで、
ダメージを受けたときのSEではなく、攻撃アニメーション再生時のSEです。
アニメーションは「中心」で人数分行いつつ、SEのみを多重再生させないようにしたかったのです。
「したかった」と過去形になっておりますのは、
SSEP_BattleSpeedUp_v2.jsという戦闘速度を調整するプラグインを元々導入しておりまして、
それのプラグインパラメーターにバトルログメッセージのフレーム数を変更する項目があり、
1体ずつアニメーションをズラすようフレームを調整して対応いたしました。
理想では、同フレームで複数匹いっぺんに攻撃アニメーションをさせ、
SEのみを1体分だけ再生させるようにしたかったのですが、
銃撃を一体ずつ流れるように撃ち、最後にダメージポップをいっぺんに表示させるというのも
なかなか躍動感があって、これもまた一興かと妥協いたしました。
色々とヒントをいただきまして、ありがとうございました。
おかげさまで、なんとか問題は解決いたしました。
別件になりますが、PromptlyPopup.jsにある以下のコードにつきまして、
コード: 全て選択
//-----------------------------------------
//多段ヒット技を使った時ポップアップが縦に並ぶようにする処理
//無くても問題ないので、不要だったり他のプラグインと競合する場合は削除して下さい
Sprite_Battler.prototype.setupDamagePopup = function() {
if (this._battler.isDamagePopupRequested()) {
if (this._battler.isSpriteVisible()) {
var sprite = new Sprite_Damage();
sprite.x = this.x + this.damageOffsetX();
sprite.y = this.y + this.damageOffsetY();
sprite.setup(this._battler);
this._damages.forEach(function(Sprite){
Sprite.y -= 30});
this._damages.push(sprite);
this.parent.addChild(sprite);
}
this._battler.clearDamagePopup();
this._battler.clearResult();
}
};
//-------------------------------------------
この処理を入れていると、
多段攻撃の回数に応じてダメージポップを一段ずつズラして表示してくれるようになります。
ただ、多段攻撃でない場合でも、
ダメージポップが消える間際に一段上に上がることが5回に1回くらいの割合でありまして
この現象は、PromptlyPopup.jsの配布ページ{ツクマテ:https://tm.yumineko.com/viewtopic.php?t=1216}にも報告されているのですが、
Trb様が回答されておらず、そのままになっている不具合です。
もしも改善できそうでしたら、是非ともよろしくお願いいたします。