toggleMute method

void toggleMute()

Implementation

void toggleMute() {
  muted.toggle();
  // Lưu trạng thái mute vào disk để giữ qua các lần khởi động
  unawaited(StorageService.to.setBool(StorageKeys.audioMuted, muted.value));
  if (muted.value) {
    _ignoreAudio(_bgm.pause());
  } else if (_bgmPlaying) {
    // BGM đang được track là "đang chạy" (chỉ bị pause bởi mute) → resume
    _ignoreAudio(_bgm.resume());
  } else {
    // BGM chưa start (mute trước khi vào game) → start
    startBgm();
  }
}