汪汪大作战
| images/wangwang | ||
| js | ||
| .eslintrc.js | ||
| .gitignore | ||
| game.js | ||
| game.json | ||
| project.config.json | ||
| project.private.config.json | ||
| README.md | ||
汪汪大作战(微信小游戏版)
对着麦克风喊"汪"来战斗的实时对战小游戏。
玩法
- 在主菜单选择你的狗狗
- 点击"开始游戏"
- 倒计时结束后对着麦克风大声、清晰地喊"汪!"
- 用声音把能量条推到对方一侧即可 K.O. 获胜
项目结构
├── game.js # 小游戏入口
├── game.json # 小游戏配置
├── project.config.json # 微信开发者工具配置
├── images/wangwang/ # 游戏素材
│ ├── dogs/ # 狗狗立绘
│ ├── ui/ # UI 元素
│ └── enemies/ # 敌人素材(备用)
└── js/
├── main.js # 游戏主逻辑
├── barkDetector.js # 狗叫检测算法
├── audioRecorder.js # 麦克风录音 + PCM 分析
├── ai.js # AI 对手
├── storage.js # 本地存档
└── render.js # Canvas 初始化
技术要点
- 使用
RecorderManager.onFrameRecorded获取实时 PCM 音频帧 - 基于 RMS 音量 + 过零率 + 中高频能量的状态机实现"汪"声检测
- AI 对手采用 IDLE → BARK → COOLDOWN 状态机
- 使用
requestAnimationFrame驱动 Canvas 2D 游戏循环