Skip to Content
Welcome to Vyno! 🍷

Game.audio

音频控制模块,支持背景音乐(BGM)和音效(SE)。

API 概览

方法描述
bgm(path, options?)播放背景音乐
stopBgm(fadeOut?)停止背景音乐
se(path, options?)播放音效

bgm()

播放背景音乐。如果已有 BGM 正在播放,会先淡出旧音乐再淡入新音乐。

Game.audio.bgm("/audio/bgm/happy.mp3", { volume: 0.5, // 基础音量 (0-1),默认 1.0 fadeIn: 1000, // 淡入时间 (ms),默认 1000 fadeOut: 500 // 淡出时间 (ms),默认 500 });

切换 BGM

// 第一首 BGM Game.audio.bgm("/audio/bgm/happy.mp3", { volume: 0.5, fadeIn: 1000 }); // 切换到另一首,会自动淡出前一首 Game.audio.bgm("/audio/bgm/peaceful.mp3", { volume: 0.5, fadeIn: 1000 });

stopBgm()

停止当前播放的 BGM。

// 使用默认淡出时间 (500ms) Game.audio.stopBgm(); // 指定淡出时间 Game.audio.stopBgm(1000);

se()

播放音效。多个音效可以同时播放,互不冲突。

Game.audio.se("/audio/se/fall-water.mp3"); // 指定音量 Game.audio.se("/audio/se/click.mp3", { volume: 0.8 });

音量系统

最终播放音量由两部分决定:

最终音量 = 基础音量 × 主音量百分比
  • 基础音量:开发者在代码中设置(0-1)
  • 主音量:用户在设置中调节(百分比)

与其他操作并行

// BGM 和背景图片同时加载 Game.audio.bgm("/audio/bgm/happy.mp3", { volume: 0.5, fadeIn: 1 }); Game.parallel(); Game.background.img("/backgrounds/bg.webp");

存档恢复

BGM 状态会自动保存和恢复:

  • 保存时记录当前 BGM 路径和音量配置
  • 恢复时自动播放对应的 BGM(无淡入延迟)
Last updated on