戦闘開始(エンカウント時)から戦闘BGMを再生したい【解決済み】

サトミン

ユーザー
戦闘開始SEに再生したいBGMを設定してみましたが、
ループ不可、戦闘が終了しても停止しないなど戦闘BGMとして扱われないため
希望通りにいきませんでした。
上記を実現できるプラグイン、方法などがあればご教示ください。
 

トリアコンタン

モデレーター
スタッフ
モデレーター
こんばんは!
エンカウントの瞬間に戦闘BGMの演奏を開始するプラグインのサンプルです。
内容をコピーしてjsファイルとして保存後、プラグイン管理画面から取り込んでください。

ただし、処理落ちしているときや音声ファイルの読み込みが遅れた場合などは演奏が遅れる場合があります。

PHP:
(function() {
    'use strict';

    var _Scene_Map_updateEncounterEffect = Scene_Map.prototype.updateEncounterEffect;
    Scene_Map.prototype.updateEncounterEffect = function() {
        if (this._encounterEffectDuration === this.encounterEffectSpeed()) {
            BattleManager.playBattleBgm();
        }
        _Scene_Map_updateEncounterEffect.apply(this, arguments);
    }
})();
 
わ、回答中に、トリアコンタンさんから、書き込みついてた!
>トリアコンタンさん:
恐れ入りました:kaoswt:

>テルミンさん:
実行内容は全く一緒ですが、トリアコンタンさんのコードの方がよりシンプルですので、
そちらを採用された方がいいかもしれません。
 
最後に編集:

トリアコンタン

モデレーター
スタッフ
モデレーター
たまにニアミスしてしまうことがありますよね……!
私の場合は横着してコードを直接貼り付けてしまいましたが、
最初からjsファイル化されていた方が導入も楽かと思うので、その場合はサスケさんのプラグインをぜひお使いください!
 

サトミン

ユーザー
トリアコンタンさん、並びに神無月サスケさん

プラグインを作成していただき感謝します。
早速試してみましたが、希望通りの動作をしています。

お二人とも、ありがとうございます!
 
トップ