export default (
  [
    {
      age: -1,
      group: 0,
      name: "apple",
      desc: "restores 20 health when consumed",
      req: [["food", 10]],
      scale: 22,
      holdOffset: 15,
      id: 0,
    },
    {
      age: 3,
      group: 0,
      name: "cookie",
      desc: "restores 40 health when consumed",
      req: [["food", 15]],
      scale: 27,
      holdOffset: 15,
      id: 1,
    },
    {
      age: 7,
      group: 0,
      name: "cheese",
      desc: "restores 30 health and another 50 over 5 seconds",
      req: [["food", 25]],
      scale: 27,
      holdOffset: 15,
      id: 2,
    },
    {
      age: -1,
      group: 1,
      name: "wood wall",
      desc: "provides protection for your village",
      req: [["wood", 10]],
      projDmg: true,
      health: 380,
      scale: 50,
      holdOffset: 20,
      placeOffset: -5,
      id: 3,
    },
    {
      age: 3,
      group: 1,
      name: "stone wall",
      desc: "provides improved protection for your village",
      req: [["stone", 25]],
      health: 900,
      scale: 50,
      holdOffset: 20,
      placeOffset: -5,
      id: 4,
    },
    {
      age: 7,
      pre: 4,
      group: 1,
      name: "castle wall",
      desc: "provides powerful protection for your village",
      req: [["stone", 35]],
      health: 1500,
      scale: 52,
      holdOffset: 20,
      placeOffset: -5,
      id: 5,
    },
    {
      age: -1,
      group: 2,
      name: "spikes",
      desc: "damages enemies when they touch them",
      req: [
        ["wood", 20],
        ["stone", 5],
      ],
      health: 400,
      dmg: 20,
      scale: 49,
      spritePadding: -23,
      holdOffset: 8,
      placeOffset: -5,
      id: 6,
    },
    {
      age: 5,
      group: 2,
      name: "greater spikes",
      desc: "damages enemies when they touch them",
      req: [
        ["wood", 30],
        ["stone", 10],
      ],
      health: 500,
      dmg: 35,
      scale: 52,
      spritePadding: -23,
      holdOffset: 8,
      placeOffset: -5,
      id: 7,
    },
    {
      age: 9,
      pre: 7,
      group: 2,
      name: "poison spikes",
      desc: "poisons enemies when they touch them",
      req: [
        ["wood", 35],
        ["stone", 15],
      ],
      health: 600,
      dmg: 30,
      pDmg: 5,
      scale: 52,
      spritePadding: -23,
      holdOffset: 8,
      placeOffset: -5,
      id: 8,
    },
    {
      age: 9,
      pre: 7,
      group: 2,
      name: "spinning spikes",
      desc: "damages enemies when they touch them",
      req: [
        ["wood", 30],
        ["stone", 20],
      ],
      health: 500,
      dmg: 45,
      turnSpeed: 0.003,
      scale: 52,
      spritePadding: -23,
      holdOffset: 8,
      placeOffset: -5,
      id: 9,
    },
    {
      age: -1,
      group: 3,
      name: "windmill",
      desc: "generates gold over time",
      req: [
        ["wood", 50],
        ["stone", 10],
      ],
      health: 400,
      pps: 1,
      turnSpeed: 0.0016,
      spritePadding: 25,
      iconLineMulti: 12,
      scale: 45,
      holdOffset: 20,
      placeOffset: 5,
      id: 10,
    },
    {
      age: 5,
      pre: 10,
      group: 3,
      name: "faster windmill",
      desc: "generates more gold over time",
      req: [
        ["wood", 60],
        ["stone", 20],
      ],
      health: 500,
      pps: 1.5,
      turnSpeed: 0.0025,
      spritePadding: 25,
      iconLineMulti: 12,
      scale: 47,
      holdOffset: 20,
      placeOffset: 5,
      id: 11,
    },
    {
      age: 8,
      pre: 11,
      group: 3,
      name: "power mill",
      desc: "generates more gold over time",
      req: [
        ["wood", 100],
        ["stone", 50],
      ],
      health: 800,
      pps: 2,
      turnSpeed: 0.005,
      spritePadding: 25,
      iconLineMulti: 12,
      scale: 47,
      holdOffset: 20,
      placeOffset: 5,
      id: 12,
    },
    {
      age: 5,
      group: 4,
      type: 2,
      name: "mine",
      desc: "allows you to mine stone",
      req: [
        ["wood", 20],
        ["stone", 100],
      ],
      iconLineMulti: 12,
      scale: 65,
      holdOffset: 20,
      placeOffset: 0,
      id: 13,
    },
    {
      age: 5,
      group: 11,
      type: 0,
      name: "sapling",
      desc: "allows you to farm wood",
      req: [
        ["wood", 150],
        ["wood", 30],
      ],
      iconLineMulti: 12,
      colDiv: 0.5,
      scale: 110,
      holdOffset: 50,
      placeOffset: -15,
      id: 14,
    },
    {
      age: 4,
      group: 5,
      name: "pit trap",
      desc: "pit that traps enemies if they walk over it",
      req: [
        ["wood", 30],
        ["stone", 30],
      ],
      trap: true,
      ignoreCollision: true,
      hideFromEnemy: true,
      health: 500,
      colDiv: 0.2,
      scale: 50,
      holdOffset: 20,
      placeOffset: -5,
      id: 15,
    },
    {
      age: 4,
      group: 6,
      name: "boost pad",
      desc: "provides boost when stepped on",
      req: [
        ["stone", 20],
        ["wood", 5],
      ],
      ignoreCollision: true,
      boostSpeed: 1.5,
      health: 150,
      colDiv: 0.7,
      scale: 45,
      holdOffset: 20,
      placeOffset: -5,
      id: 16,
    },
    {
      age: 7,
      group: 7,
      doUpdate: true,
      name: "turret",
      desc: "defensive structure that shoots at enemies",
      req: [
        ["wood", 200],
        ["stone", 150],
      ],
      health: 800,
      projectile: 1,
      shootRange: 700,
      shootRate: 2200,
      scale: 43,
      holdOffset: 20,
      placeOffset: -5,
      id: 17,
    },
    {
      age: 7,
      group: 8,
      name: "platform",
      desc: "platform to shoot over walls and cross over water",
      req: [["wood", 20]],
      ignoreCollision: true,
      zIndex: 1,
      health: 300,
      scale: 43,
      holdOffset: 20,
      placeOffset: -5,
      id: 18,
    },
    {
      age: 7,
      group: 9,
      name: "healing pad",
      desc: "standing on it will slowly heal you",
      req: [
        ["wood", 30],
        ["food", 10],
      ],
      ignoreCollision: true,
      healCol: 15,
      health: 400,
      colDiv: 0.7,
      scale: 45,
      holdOffset: 20,
      placeOffset: -5,
      id: 19,
    },
    {
      age: 9,
      group: 10,
      name: "spawn pad",
      desc: "you will spawn here when you die but it will disappear",
      req: [
        ["wood", 100],
        ["stone", 100],
      ],
      health: 400,
      ignoreCollision: true,
      spawnPoint: true,
      scale: 45,
      holdOffset: 20,
      placeOffset: -5,
      id: 20,
    },
    {
      age: 7,
      group: 12,
      name: "blocker",
      desc: "blocks building in radius",
      req: [
        ["wood", 30],
        ["stone", 25],
      ],
      ignoreCollision: true,
      blocker: 300,
      health: 400,
      colDiv: 0.7,
      scale: 45,
      holdOffset: 20,
      placeOffset: -5,
      id: 21,
    },
    {
      age: 7,
      group: 13,
      name: "teleporter",
      desc: "teleports you to a random point on the map",
      req: [
        ["wood", 60],
        ["stone", 60],
      ],
      ignoreCollision: true,
      teleport: true,
      health: 200,
      colDiv: 0.7,
      scale: 45,
      holdOffset: 20,
      placeOffset: -5,
      id: 22,
    },
  ] as const
).map((e) => Object.freeze(e));
