Files
SoundGame/web/template/game.js
T
SoundGame Dev cc0f8c008d HTML5 重写:6 款游戏 + 用户系统 + 全局设置 + 5 轮迭代重构
- 新增 web/ 纯音频 HTML5 平台:共享引擎(手势/WebAudio 三层/设置/震动)、
  Node 零依赖服务器(静态 + 注册登录 + 进度存档 API)
- 游戏:剑与声(RPG 新作)、声命线、暗室(重设计)、音序回响(重设计)、
  节拍行者(跟随领奏重构)、盲航(同向闪避重构);声东击西删除
- 全局功能:男声/女声双套 TTS 资产、三档语速、BGM 音量三档、
  震动反馈语言(10 种震型)、服务器进度同步
- 资产:899 ogg + 899 m4a(Qwen3-TTS 双性别语音、Stable Audio 3 音效、
  Mureka BGM 4+3 首),终检零缺失
- 文档:docs/design/ 13 篇设计审查文档、docs/audio/ 资产管线、
  web/server/README.md API 文档
2026-08-29 21:55:44 +08:00

28 lines
1.1 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* 模板游戏 —— 最小可运行示例:任意手势播一个测试音。
*
* 新游戏复制整个 web/template/ 目录为 web/<你的游戏名>/,然后:
* 1. 把本文件替换成你的游戏逻辑(继承 Game 或 StateMachineGame);
* 2. 替换 index.html 里的 <title> 和 import 的类名;
* 3. 音频放 audio/{bgm,voice,sfx}/ 下,用 audio.play('sfx/xxx') 播放;
* 4. 替换 cover.png(1080x1920 竖图)。
* 引擎 API 详见 docs/web-engine-api.md。
*/
import { Game } from '../engine/game.js';
export class TemplateGame extends Game {
start() {
// 预解码音效,消除首次播放延迟(等价于 Android 的 prewarm,
// 但 Web 端不需要音量 0 假播)
this.audio.prewarm(['sfx/beep']);
this.audio.play('sfx/beep');
}
onGesture(g) {
// 六种手势:'up' | 'down' | 'left' | 'right' | 'tap' | 'doubletap'
// 注意 'tap' 有约 300ms 延迟(双击判定窗口),属引擎级行为。
console.log('[TemplateGame] gesture:', g);
this.audio.play('sfx/beep');
}
}