見出し画像

かいしんのいちげきのあの音

そういえばこれも鳴ってなかった

戦闘テストしてるときの違和感がもうひとつあって、かしいんのいちげきのときの「ジャジャジャーッ」も鳴ってなかったんですよ。で、それらしいプラグインさがしてみたんですけど見つけられなかったのでつくりました。

画像1

ダウンロードはこちら

CSVN_criticalSound.js
※右クリックで直接DL

しくみの解説

これはわりと簡単です。戦闘中の音とかはどこで出してるのかなと検索して見つけたんですが、MZではどうもWindow系から音を出してるみたいですね。VXは処理系全体でフレームぶん回してScene系から音を出してたような記憶があるんですが、そのあたりはちょっと違うようです。

戦闘中の音は Window_BattleLog から出ていて、クリティカル発生時の処理はこれ。5720行目あたりです。

Window_BattleLog.prototype.displayCritical = function(target) {
   if (target.result().critical) {
       if (target.isActor()) {
           this.push("addText", TextManager.criticalToActor);
       } else {
           this.push("addText", TextManager.criticalToEnemy);
       }
   }
};

クリティカル発生時にターゲットがアクターの場合と敵の場合でif分岐してるので、プラグイン側でSEをそれぞれ設定した音をそれぞれここで鳴らす感じに書きました。

なお、クリティカルの音が出て後続の処理に移るまで少しwaitを入れています。VXの頃のように wait(フレーム数) でタイミングを図るのではなく、

this.wait()

とすると16フレ止まるようになっているようなので、私は完全に自分のフィーリングでこれを3回呼んでいます。いらない人はコメントアウトなりなんなりすればいいし、もっと待ちたい人は増やせばいいです。ただし16フレ単位でなくもっと細かく調整したい人はもう少しいろいろ書かないといけないかもしれません。

ほかにつくったやつはこちら

cursed-steven/rmmz: RPGツクールMZ用のプラグインスクリプトをおいていきます。

この記事が気に入ったらサポートをしてみませんか?