{
  "schemaVersion": 1,
  "atomId": "game_over_panel.aicomponent",
  "bundleType": "aicomponent",
  "category": "component",
  "mode": "fixed",
  "label": { "zh": "游戏结束面板", "en": "Game over result panel" },
  "tags": ["ui", "game-over", "win", "lose", "result-panel", "modal"],
  "bindingRoles": ["gameOverDialog"],
  "scaffold": {
    "files": {
      "src/game/scenes/GameUI/GameOverPanel.ts": { "source": "ref/GameOverPanel.ts", "mode": "full", "weight": 10 }
    }
  },
  "imports": [
    { "slot": "engine", "pinAtomId": "phaser.aicomponent", "edgeKind": "requires", "bindAs": "engine" },
    {
      "slot": "winPanel",
      "description": "胜利结果面板视觉图片",
      "bindAs": "winTexture",
      "required": false,
      "edgeKind": "compatibleWith",
      "matchBindingRoles": ["successFeedbackPanel"],
      "allowedBundleTypes": ["aiimage"]
    },
    {
      "slot": "losePanel",
      "description": "失败结果面板视觉图片",
      "bindAs": "loseTexture",
      "required": false,
      "edgeKind": "compatibleWith",
      "matchBindingRoles": ["failFeedbackPanel"],
      "allowedBundleTypes": ["aiimage"]
    },
    {
      "slot": "sfxWinAnim",
      "description": "胜利动画播放时的音效",
      "bindAs": "sfxWinAnim",
      "required": false,
      "edgeKind": "compatibleWith",
      "matchBindingRoles": ["sfxSuccess"],
      "allowedBundleTypes": ["aiaudio"]
    },
    {
      "slot": "sfxButtonClick",
      "description": "面板按钮点击音效",
      "bindAs": "sfxButtonClick",
      "required": false,
      "edgeKind": "compatibleWith",
      "matchBindingRoles": ["sfxButtonClick"],
      "allowedBundleTypes": ["aiaudio"]
    }
  ],
  "exports": [
    { "name": "GameOverPanel", "kind": "class", "location": "src/game/scenes/GameUI/GameOverPanel.ts" }
  ],
  "neutralDescriptor": {
    "geometry": "semi-transparent overlay modal showing win or lose result image with download CTA button, triggered after game ends"
  },
  "files": { "skill": "SKILL.md", "gameOverPanel": "ref/GameOverPanel.ts" }
}
