プラグインをちょっと見てみましたが、
次の箇所で遅らせてはどうですか?
スプライトセットにaddChild()してます。
var upstream_Spriteset_Battle_createLowerLayer = Spriteset_Battle.prototype.createLowerLayer;
Spriteset_Battle.prototype.createLowerLayer = function () {
upstream_Spriteset_Battle_createLowerLayer.apply(this);
maybeOriginal_battlerSprites.apply(this).forEach((function (battlerSprite) {
// 画面の色調変更の暫定対応
// battleFieldにappendしてしまうと影響を受けてしまうが、
// カメラなどの対応ができないのでYEPプラグインなどでおかしくなってしまう…><;
if (settings['Secret Disable Append To Field']) {
this.addChild(battlerSprite.torigoya_balloonWindow);
} else {
// ↓ ここです
this._battleField.addChild(battlerSprite.torigoya_balloonWindow);
}
}).bind(this));
};
setTimeout()は、引数で与えた関数の実行を遅らせるものなので、
条件によってaddChild()の発生を遅らせれば可能です。
例えばひらめきアニメーションを流すときにフラグを立てて、
その場合はsetTimeout()で遅らせるようにするとか。
コード: 全て選択
if (settings['Secret Disable Append To Field']) {
this.addChild(battlerSprite.torigoya_balloonWindow);
} else {
// ↓ これを if 文で囲んでください。スイッチにより遅らせるかどうかを分岐。
var t = setTimeout((function(that) {
return function() {
that._battleField.addChild(battlerSprite.torigoya_balloonWindow);
clearTimeout(t);
};
})(this), 10000); // <- タイミングはここで調整します。
}
遅らせたいところでスイッチを入れてください。