fix(audio): 웹 환경 에셋 경로 수정
- setAsset 경로에서 'assets/' 접두사 제거 - Flutter Web에서 경로 중복(assets/assets/...) 오류 해결 - BGM, Player SFX, Monster SFX 모든 경로 수정
This commit is contained in:
@@ -97,8 +97,8 @@ class AudioService {
|
||||
|
||||
/// BGM 재생
|
||||
///
|
||||
/// [name]은 assets/audio/bgm/ 폴더 내 파일명 (확장자 제외)
|
||||
/// 예: playBgm('battle') → assets/audio/bgm/battle.mp3
|
||||
/// [name]은 audio/bgm/ 폴더 내 파일명 (확장자 제외)
|
||||
/// 예: playBgm('battle') → audio/bgm/battle.mp3
|
||||
///
|
||||
/// 웹에서 사용자 상호작용 없이 호출되면 대기 상태로 저장되고,
|
||||
/// 다음 SFX 재생 시 함께 시작됩니다.
|
||||
@@ -110,7 +110,7 @@ class AudioService {
|
||||
if (_currentBgm == name) return; // 이미 재생 중
|
||||
|
||||
try {
|
||||
await _bgmPlayer!.setAsset('assets/audio/bgm/$name.mp3');
|
||||
await _bgmPlayer!.setAsset('audio/bgm/$name.mp3');
|
||||
await _bgmPlayer!.play();
|
||||
_currentBgm = name;
|
||||
_pendingBgm = null;
|
||||
@@ -177,8 +177,8 @@ class AudioService {
|
||||
|
||||
/// 플레이어 이펙트 SFX 재생
|
||||
///
|
||||
/// [name]은 assets/audio/sfx/ 폴더 내 파일명 (확장자 제외)
|
||||
/// 예: playPlayerSfx('attack') → assets/audio/sfx/attack.mp3
|
||||
/// [name]은 audio/sfx/ 폴더 내 파일명 (확장자 제외)
|
||||
/// 예: playPlayerSfx('attack') → audio/sfx/attack.mp3
|
||||
///
|
||||
/// 대기열 기반으로 모든 사운드의 완전 재생을 보장합니다.
|
||||
Future<void> playPlayerSfx(String name) async {
|
||||
@@ -190,13 +190,13 @@ class AudioService {
|
||||
// 웹에서 대기 중인 BGM 재생 시도
|
||||
_tryPlayPendingBgm();
|
||||
|
||||
await _playerSfxPool?.play('assets/audio/sfx/$name.mp3');
|
||||
await _playerSfxPool?.play('audio/sfx/$name.mp3');
|
||||
}
|
||||
|
||||
/// 몬스터 이펙트 SFX 재생
|
||||
///
|
||||
/// [name]은 assets/audio/sfx/ 폴더 내 파일명 (확장자 제외)
|
||||
/// 예: playMonsterSfx('hit') → assets/audio/sfx/hit.mp3
|
||||
/// [name]은 audio/sfx/ 폴더 내 파일명 (확장자 제외)
|
||||
/// 예: playMonsterSfx('hit') → audio/sfx/hit.mp3
|
||||
///
|
||||
/// 대기열 기반으로 모든 사운드의 완전 재생을 보장합니다.
|
||||
Future<void> playMonsterSfx(String name) async {
|
||||
@@ -208,7 +208,7 @@ class AudioService {
|
||||
// 웹에서 대기 중인 BGM 재생 시도
|
||||
_tryPlayPendingBgm();
|
||||
|
||||
await _monsterSfxPool?.play('assets/audio/sfx/$name.mp3');
|
||||
await _monsterSfxPool?.play('audio/sfx/$name.mp3');
|
||||
}
|
||||
|
||||
/// 웹에서 대기 중인 BGM 재생 시도 (사용자 상호작용 발생 시)
|
||||
@@ -223,8 +223,8 @@ class AudioService {
|
||||
|
||||
/// SFX 재생 (레거시 호환)
|
||||
///
|
||||
/// [name]은 assets/audio/sfx/ 폴더 내 파일명 (확장자 제외)
|
||||
/// 예: playSfx('attack') → assets/audio/sfx/attack.mp3
|
||||
/// [name]은 audio/sfx/ 폴더 내 파일명 (확장자 제외)
|
||||
/// 예: playSfx('attack') → audio/sfx/attack.mp3
|
||||
///
|
||||
/// @deprecated playPlayerSfx 또는 playMonsterSfx를 사용하세요.
|
||||
Future<void> playSfx(String name) => playPlayerSfx(name);
|
||||
|
||||
Reference in New Issue
Block a user