// Categories
export const STAMPS = [
  "pb_gat:trinket_weaving",
  "pb_gat:trinket_smelt",
  "pb_gat:trinket_hunger",
  "minecraft:egg",
  "pb_gat:trinket_thorns",
  "minecraft:iron_block",
  "minecraft:furnace",
  "pb_gat:trinket_invis",
  "minecraft:lightning_rod",
  "pb_gat:trinket_light",
  "pb_gat:trinket_low_health",
  "pb_gat:trinket_heavy_dumbell",
  "minecraft:acacia_log",
  "minecraft:gravel",
  "minecraft:mycelium",
];
export const COATINGS = [
  "minecraft:ender_pearl",
  "minecraft:wind_charge",
  "minecraft:sugar",
  "pb_gat:trinket_food",
  "minecraft:redstone",
  "minecraft:blaze_powder",
  "minecraft:iron_ingot",
  "pb_gat:trinket_fire",
  "minecraft:spider_eye",
  "minecraft:powder_snow_bucket",
  "pb_gat:trinket_jump",
  "pb_gat:trinket_knockback",
  "minecraft:phantom_membrane",
  "pb_gat:trinket_magnet",
];
export const ORB_ID = "pb_gat:orb_blank";
// Utility: translate clicked face to logical side based on block facing
export function mapFaceToLogicalSide(blockFacing, clickedFace) {
  const sideMap = {
    south: { north: "front", south: "back", east: "left", west: "right" },
    north: { south: "front", north: "back", west: "left", east: "right" },
    west: { east: "front", west: "back", north: "right", south: "left" },
    east: { west: "front", east: "back", south: "right", north: "left" },
  };
  return sideMap[blockFacing]?.[clickedFace] ?? null;
}

export const UP_RECIPES = [
  // Upgrade Disk: Extend
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_weaving",
    right: "minecraft:ender_pearl",
    output: "pb_gat:orb_reach",
  },
  // Upgrade Disk: Breeze
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_smelt",
    right: "minecraft:wind_charge",
    output: "pb_gat:orb_cooldown",
  },
  // Upgrade Disk: Accelerate
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_hunger",
    right: "minecraft:sugar",
    output: "pb_gat:orb_speed",
  },
  // Upgrade Disk: Multiply
  {
    front: "pb_gat:orb_blank",
    left: "minecraft:egg",
    right: "pb_gat:trinket_food",
    output: "pb_gat:orb_extra",
  },
  // Upgrade Disk: Empower
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_hunger",
    right: "minecraft:redstone",
    output: "pb_gat:orb_power",
  },
  // Upgrade Disk: Prolong
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_weaving",
    right: "minecraft:redstone",
    output: "pb_gat:orb_life",
  },
  // Upgrade Disk: Blaze
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_smelt",
    right: "minecraft:blaze_powder",
    output: "pb_gat:orb_ember",
  },
  // Hook Disk: Claw
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_thorns",
    right: "minecraft:iron_ingot",
    output: "pb_gat:orb_barbed",
  },
  // Bridge Disk: Guard
  {
    front: "pb_gat:orb_blank",
    left: "minecraft:iron_block",
    right: "pb_gat:trinket_fire",
    output: "pb_gat:orb_guard_rail",
  },
  // Barrier Disk: Sting
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_thorns",
    right: "minecraft:spider_eye",
    output: "pb_gat:orb_spike",
  },
  // Snowman Disk: Freeze
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_invis",
    right: "minecraft:powder_snow_bucket",
    output: "pb_gat:orb_nitrogen",
  },
  // Shockwave Disk: Fling
  {
    front: "pb_gat:orb_blank",
    left: "minecraft:lightning_rod",
    right: "pb_gat:trinket_jump",
    output: "pb_gat:orb_shoot",
  },
  // Shockwave Disk: Stun
  {
    front: "pb_gat:orb_blank",
    left: "minecraft:lightning_rod",
    right: "pb_gat:trinket_knockback",
    output: "pb_gat:orb_shockloader",
  },
  // Bucket Disk: Heatproof
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_light",
    right: "minecraft:phantom_membrane",
    output: "pb_gat:orb_lava",
  },
  // Bucket Disk: Absorb
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_low_health",
    right: "minecraft:phantom_membrane",
    output: "pb_gat:orb_sponge",
  },




  // Gauntlet Disk: Force
  {
    front: "pb_gat:orb_blank",
    left: "pb_gat:trinket_heavy_dumbell",
    right: "minecraft:ender_pearl",
    output: "pb_gat:orb_force",
  },
  // Mirror Disk: Aboreal
  {
    front: "pb_gat:orb_blank",
    left: "minecraft:acacia_log",
    right: "pb_gat:trinket_magnet",
    output: "pb_gat:orb_tree",
  },
  // Mirror Disk: Sediment
  {
    front: "pb_gat:orb_blank",
    left: "minecraft:gravel",
    right: "pb_gat:trinket_magnet",
    output: "pb_gat:orb_dirt",
  },
  // Mirror Disk: Poeceae
  {
    front: "pb_gat:orb_blank",
    left: "minecraft:mycelium",
    right: "pb_gat:trinket_magnet",
    output: "pb_gat:orb_grass",
  },
];
