{
  "schemaVersion": 1,
  "atomId": "sound_utils.aicomponent",
  "bundleType": "aicomponent",
  "category": "util",
  "mode": "fixed",
  "label": { "zh": "音频工具函数", "en": "Sound utility functions" },
  "tags": ["util", "audio", "sound", "safe-play", "phaser"],
  "bindingRoles": ["audioPlayHelper"],
  "scaffold": {
    "files": {
      "src/game/utils/SoundUtils.ts": { "source": "ref/SoundUtils.ts", "mode": "full", "weight": 10 }
    }
  },
  "imports": [
    { "slot": "engine", "pinAtomId": "phaser.aicomponent", "edgeKind": "requires", "bindAs": "engine" }
  ],
  "exports": [
    { "name": "safePlaySound", "kind": "function", "location": "src/game/utils/SoundUtils.ts" }
  ],
  "neutralDescriptor": {
    "geometry": "utility wrapper for Phaser audio playback that safely handles missing sound keys and settings-based muting"
  },
  "usageHints": [
    "safePlaySound(scene, key, config?) 在音效不存在时静默失败（不抛异常）",
    "自动检查 settings.soundOn，静音状态下跳过播放",
    "在 InputHandler / LevelLifecycle / AnimationManager 中广泛使用"
  ],
  "files": { "skill": "SKILL.md", "soundUtils": "ref/SoundUtils.ts" }
}
