export const gameConfig = {
  gameId: "bird",
  gameName: "Passáro",
  type: "blocks",
  icon: "🐦",
  descricao:
    "Ajude o Passáro a coletar comida e voltar ao ninho usando blocos Blockly.",
  dificuldade: "Iniciante",
  categoria: "Lógica",
  tempoEstimado: "30-60 min",
  conceitos: ["Loops/Repetição", "Condicionais", "Eventos"],
  route: "/games/bird",
  component: "BirdGame",
  ativo: true,
  destaque: true,
  prdReady: false,
  objectives: [
    "Controlar o movimento do pássaro",
    "Coletar comida",
    "Retornar ao ninho com segurança",
  ],
  metadata: {
    ultimaAtualizacao: "2025-09-07",
    versao: "1.0.0",
  },
  fases: [
    {
      id: 1,
      nome: "Coletando Comida",
      descricao: "Passe pela minhoca antes de ir para o ninho.",
      start: { x: 20, y: 20 },
      startAngle: 90,
      worm: { x: 50, y: 50 },
      nest: { x: 80, y: 80 },
      obstacles: [],
      axis: [],
      allowedBlocks: ["mover_direcao", "enquanto_nao_chegou_ninho"],
    },
    {
      id: 2,
      nome: "Use Lógica",
      descricao: "Use lógica para resolver o desafio.",
      start: { x: 20, y: 20 },
      startAngle: 0,
      worm: { x: 80, y: 20 },
      nest: { x: 80, y: 80 },
      obstacles: [{ x0: 0, y0: 50, x1: 60, y1: 50 }],
      axis: [],
      allowedBlocks: [
        "mover_direcao",
        "nao_tem_minhoca",
        "se_senao",
        "enquanto_nao_chegou_ninho",
      ],
    },
    {
      id: 3,
      nome: "Desviando Obstáculos",
      descricao: "Desvie dos obstáculos para chegar ao ninho.",
      start: { x: 20, y: 70 },
      startAngle: 270,
      worm: { x: 50, y: 20 },
      nest: { x: 80, y: 70 },
      obstacles: [{ x0: 40, y0: 60, x1: 40, y1: 100 }],
      axis: [],
      allowedBlocks: [
        "mover_direcao",
        "nao_tem_minhoca",
        "se_senao",
        "enquanto_nao_chegou_ninho",
      ],
    },
    {
      id: 4,
      nome: "Movimentação com condicionais",
      descricao: "Chegue ao ninho usando lógica, condicionais e variáveis.",
      start: { x: 20, y: 80 },
      startAngle: 0,
      worm: null,
      nest: { x: 80, y: 20 },
      obstacles: [{ x0: 0, y0: 0, x1: 65, y1: 65 }],
      axis: { x: true, y: false },
      allowedBlocks: [
        "mover_direcao",
        "enquanto_nao_chegou_ninho",
        "nao_tem_minhoca",
        "se_senao",
        "posicao",
        "numero",
        "comparador",
      ],
    },
    {
      id: 5,
      nome: "Movimentação no eixo vertical",
      descricao:
        "Chegue ao ninho usando lógica, condicionais e variáveis, mas agora no eixo vertical (Y).",
      start: { x: 80, y: 80 },
      startAngle: 270,
      worm: null,
      nest: { x: 20, y: 20 },
      obstacles: [{ x0: 0, y0: 100, x1: 65, y1: 35 }],
      axis: { x: true, y: true },
      allowedBlocks: [
        "mover_direcao",
        "enquanto_nao_chegou_ninho",
        "nao_tem_minhoca",
        "se_senao",
        "posicao",
        "numero",
        "comparador",
      ],
    },
    {
      id: 6,
      nome: "Caminho Bloqueado",
      descricao: "Desvie do obstáculo central para chegar ao ninho.",
      start: { x: 20, y: 40 },
      startAngle: 0,
      worm: { x: 80, y: 20 },
      nest: { x: 20, y: 80 },
      obstacles: [{ x0: 0, y0: 59, x1: 50, y1: 59 }],
      axis: { x: true, y: true },
      allowedBlocks: [
        "mover_direcao",
        "enquanto_nao_chegou_ninho",
        "nao_tem_minhoca",
        "se_mutavel",
        "posicao",
        "numero",
        "comparador",
        "logica_e",
      ],
    },
    {
      id: 7,
      nome: "Desafio dos Muros",
      descricao: "Passe por vários muros para chegar ao ninho.",
      start: { x: 80, y: 80 },
      startAngle: 180,
      worm: { x: 80, y: 20 },
      nest: { x: 20, y: 20 },
      obstacles: [
        { x0: 0, y0: 70, x1: 40, y1: 70 },
        { x0: 70, y0: 50, x1: 100, y1: 50 },
      ],
      axis: { x: true, y: true },
      allowedBlocks: [
        "mover_direcao",
        "enquanto_nao_chegou_ninho",
        "nao_tem_minhoca",
        "se_mutavel",
        "posicao",
        "numero",
        "comparador",
        "logica_e",
      ],
    },
    {
      id: 8,
      nome: "Labirinto",
      descricao:
        "Colete a comida e chegue ao ninho passando por vários obstáculos.",
      start: { x: 20, y: 25 },
      startAngle: 90,
      worm: { x: 80, y: 25 },
      nest: { x: 80, y: 75 },
      obstacles: [
        { x0: 40, y0: 0, x1: 40, y1: 20 },
        { x0: 75, y0: 50, x1: 100, y1: 50 },
        { x0: 50, y0: 100, x1: 50, y1: 75 },
        { x0: 0, y0: 50, x1: 25, y1: 50 },
      ],
      axis: { x: true, y: true },
      allowedBlocks: [
        "mover_direcao",
        "enquanto_nao_chegou_ninho",
        "nao_tem_minhoca",
        "se_mutavel",
        "posicao",
        "numero",
        "comparador",
        "logica_e",
      ],
    },
    {
      id: 9,
      nome: "Desafio Final",
      descricao:
        "Use tudo que aprendeu para coletar a comida e chegar ao ninho.",
      start: { x: 80, y: 70 },
      startAngle: 180,
      worm: { x: 20, y: 20 },
      nest: { x: 80, y: 20 },
      obstacles: [
        { x0: 0, y0: 72, x1: 31, y1: 100 },
        { x0: 40, y0: 50, x1: 71, y1: 0 },
        { x0: 80, y0: 50, x1: 100, y1: 50 },
      ],
      axis: { x: true, y: true },
      allowedBlocks: [
        "mover_direcao",
        "enquanto_nao_chegou_ninho",
        "nao_tem_minhoca",
        "se_mutavel",
        "posicao",
        "numero",
        "comparador",
        "logica_e",
      ],
    },
    {
      id: 10,
      nome: "Labirinto Supremo",
      descricao:
        "O último desafio! Passe por todos os obstáculos, colete a comida e chegue ao ninho.",
      start: { x: 20, y: 20 },
      startAngle: 90,
      worm: { x: 80, y: 50 },
      nest: { x: 20, y: 20 },
      obstacles: [
        { x0: 40, y0: 60, x1: 60, y1: 60 },
        { x0: 40, y0: 60, x1: 60, y1: 30 },
        { x0: 60, y0: 30, x1: 100, y1: 30 },
      ],
      axis: { x: true, y: true },
      allowedBlocks: [
        "mover_direcao",
        "enquanto_nao_chegou_ninho",
        "nao_tem_minhoca",
        "se_mutavel",
        "posicao",
        "numero",
        "comparador",
        "logica_e",
      ],
    },
  ],
};
