Add resonance and result sound effects

This commit is contained in:
2026-06-24 17:11:02 +09:00
parent 3eda3e8d14
commit 8c446f8948
7 changed files with 73 additions and 14 deletions

View File

@@ -3,8 +3,10 @@ import militiaThemeUrl from '../../assets/audio/bgm/militia-theme.mp3';
import oathThemeUrl from '../../assets/audio/bgm/oath-theme.mp3';
import storyDarkUrl from '../../assets/audio/bgm/story-dark.mp3';
import titleThemeUrl from '../../assets/audio/bgm/title-theme.mp3';
import bondResonanceUrl from '../../assets/audio/sfx/bond-resonance.wav';
import cartRollUrl from '../../assets/audio/sfx/cart-roll.mp3';
import combatImpactUrl from '../../assets/audio/sfx/combat-impact.mp3';
import defeatStingUrl from '../../assets/audio/sfx/defeat-sting.wav';
import expGainUrl from '../../assets/audio/sfx/exp-gain.mp3';
import footstepWalkUrl from '../../assets/audio/sfx/footstep-walk.mp3';
import horseGallopUrl from '../../assets/audio/sfx/horse-gallop.mp3';
@@ -12,6 +14,7 @@ import levelUpUrl from '../../assets/audio/sfx/level-up.wav';
import strategyCastUrl from '../../assets/audio/sfx/strategy-cast.mp3';
import swordSlashUrl from '../../assets/audio/sfx/sword-slash.mp3';
import uiSelectUrl from '../../assets/audio/sfx/ui-select.mp3';
import victoryFanfareUrl from '../../assets/audio/sfx/victory-fanfare.wav';
export const musicTracks = {
'title-theme': titleThemeUrl,
@@ -29,6 +32,9 @@ export const effectTracks = {
'cart-roll': cartRollUrl,
'exp-gain': expGainUrl,
'level-up': levelUpUrl,
'bond-resonance': bondResonanceUrl,
'victory-fanfare': victoryFanfareUrl,
'defeat-sting': defeatStingUrl,
'footstep-walk': footstepWalkUrl,
'horse-gallop': horseGallopUrl
} as const;

View File

@@ -4340,8 +4340,8 @@ export class BattleScene extends Phaser.Scene {
: `패배... ${battleScenario.defeatConditionLabel} 조건이 발생했습니다.`;
this.pushBattleLog(message);
this.renderSituationPanel(message);
soundDirector.playEffect(outcome === 'victory' ? 'exp-gain' : 'combat-impact', {
volume: outcome === 'victory' ? 0.38 : 0.28,
soundDirector.playEffect(outcome === 'victory' ? 'victory-fanfare' : 'defeat-sting', {
volume: outcome === 'victory' ? 0.34 : 0.26,
stopAfterMs: 1200
});
this.publishFirstBattleReport(outcome);
@@ -7335,7 +7335,7 @@ export class BattleScene extends Phaser.Scene {
return Promise.resolve();
}
soundDirector.playEffect('strategy-cast', { volume: 0.18, rate: 1.14, stopAfterMs: 520 });
soundDirector.playEffect('bond-resonance', { volume: 0.22, rate: 1.04, stopAfterMs: 620 });
const objects: Phaser.GameObjects.GameObject[] = [];
const line = this.add.graphics();
@@ -7385,7 +7385,7 @@ export class BattleScene extends Phaser.Scene {
return Promise.resolve();
}
soundDirector.playEffect('strategy-cast', { volume: 0.22, rate: 1.08, stopAfterMs: 720 });
soundDirector.playEffect('bond-resonance', { volume: 0.24, rate: 1, stopAfterMs: 760 });
const aura = this.trackCombatObject(this.add.circle(auraX, auraY, 42));
aura.setStrokeStyle(4, 0xffdf7b, 0.88);