console.info("[SOCIETY] addRecipes.js loaded");

ServerEvents.recipes((event) => {
  // Crafting up
  event.shapeless("society:gold_sea_coin", ["9x society:iron_sea_coin"]);
  event.shapeless("society:neptunium_sea_coin", ["9x society:gold_sea_coin"]);
  // Crafting down
  event.shapeless("9x society:iron_sea_coin", ["society:gold_sea_coin"]);
  event.shapeless("9x society:gold_sea_coin", ["society:neptunium_sea_coin"]);

  event
    .shapeless("2x aquaculture:neptunium_nugget", [
      "society:neptunium_sea_coin",
      "minecraft:flint",
    ])
    .keepIngredient("minecraft:flint");

  // Chum
  event.shapeless("society:bucket_of_thrasher_chum", [
    "fishofthieves:splashtail",
    "minecraft:bucket",
    "2x minecraft:bone_meal",
  ]);
  event.shapeless("society:bucket_of_book_chum", [
    "eidolon:shadow_gem",
    "minecraft:bucket",
    "2x irons_spellbooks:epic_ink",
  ]);
  event.shapeless("society:bucket_of_meat_chum", [
    "biomancy:living_flesh",
    "biomancy:blood_bucket",
    "2x minecraft:bone_meal",
  ]);
  event.shapeless("society:bucket_of_black_tiger_shrimp_chum", [
    "fishofthieves:wildsplash",
    "minecraft:bucket",
    "2x minecraft:bone_meal",
  ]);

  // Decrees
  event.shapeless(
    Item.of(
      "bountiful:decree",
      '{"bountiful:decree_data":\'{"ids":["professor"]}\'}'
    ),
    ["society:unholy_contract", "biomancy:primordial_core"]
  );
  event.shapeless(
    Item.of(
      "bountiful:decree",
      '{"bountiful:decree_data":\'{"ids":["hunter"]}\'}'
    ),
    [
      "irons_spellbooks:hogskin",
      "dimdungeons:block_portal_crown",
      "irons_spellbooks:rare_ink",
    ]
  );
  event.shaped(
    Item.of(
      "bountiful:decree",
      '{"bountiful:decree_data":\'{"ids":["gatekeeper"]}\'}'
    ),
    ["rsr", "cGc", "rNr"],
    {
      r: "eidolon:crimson_essence",
      s: Item.of(
        "irons_spellbooks:artificer_cane",
        '{ISBUpgrades:[{id:"irons_spellbooks:ender_power",slot:"mainhand",upgrades:3}]}'
      ).weakNBT(),
      c: "dimdungeons:block_portal_crown",
      G: "dimdungeons:block_portal_keyhole",
      N: "eidolon:notetaking_tools",
    }
  );
  event.shaped(
    Item.of(
      "bountiful:decree",
      '{"bountiful:decree_data":\'{"ids":["sushi_chef"]}\'}'
    ),
    ["rdf", "mGn", "csl"],
    {
      r: "aquaculture:neptunium_fishing_rod",
      d: "alexscaves:deep_sea_sushi_roll",
      f: "aquaculture:neptunium_fillet_knife",
      m: "farmersdelight:rice_roll_medley_block",
      G: "society:gourmand_contract",
      n: "netherdepthsupgrade:nether_rice_roll_medley_block",
      c: "sushigocrafting:cleaver_knife",
      s: "sushigocrafting:salmon_gunkan",
      l: "netherdepthsupgrade:lava_fishing_rod",
    }
  );
  event.shaped(
    Item.of(
      "bountiful:decree",
      '{"bountiful:decree_data":\'{"ids":["baker"]}\'}'
    ),
    [" b ", "pGp", " k "],
    {
      b: "bakery:bakery_standard",
      k: "herbalbrews:herbalbrews_standard",
      p: "endersdelight:chorus_pie_slice",
      G: "society:gourmand_contract",
    }
  );
  event.shaped("obscure_api:astral_dust", [" E ", "nDn", " E "], {
    E: "irons_spellbooks:epic_ink",
    n: "aquaculture:neptunium_ingot",
    D: "society:aquamagical_dust"
  });

  // Artifacts
  event.shaped("artifacts:universal_attractor", ["l s", "SLS", "ISI"], {
    l: "oreganized:lead_ingot",
    s: "oreganized:silver_ingot",
    S: "irons_spellbooks:shriving_stone",
    L: "irons_spellbooks:lightning_bottle",
    I: "irons_spellbooks:legendary_ink",
  });

  event.shaped("artifacts:crystal_heart", ["GZG", "ICI", "GJG"], {
    J: "vinery:jo_special_mixture",
    Z: "eidolon:zombie_heart",
    G: "irons_spellbooks:greater_healing_potion",
    C: "irons_spellbooks:upgrade_orb",
    I: "irons_spellbooks:legendary_ink",
  });

  event.shaped("artifacts:whoopee_cushion", ["LLL", "RBR", "LLL"], {
    R: "irons_spellbooks:blood_rune",
    L: "minecraft:leather",
    B: "supplementaries:bellows",
  });

  event.shaped("artifacts:scarf_of_invisibility", ["MLM", "RIR", "MLM"], {
    R: "irons_spellbooks:evocation_rune",
    L: "irons_spellbooks:greater_evasion_elixir",
    I: "irons_spellbooks:invisibility_ring",
    M: "irons_spellbooks:magic_cloth",
  });

  event.shaped("artifacts:superstitious_hat", ["MLM", "RGR", "MFM"], {
    R: "irons_spellbooks:ender_rune",
    L: Item.of(
      "minecraft:potion",
      '{Potion:"buzzier_bees:strong_luck"}'
    ).weakNBT(),
    G: "minecraft:raw_gold_block",
    M: "irons_spellbooks:magic_cloth",
    F: "minecraft:rabbit_foot",
  });

  event.shaped("artifacts:running_shoes", ["MMM", "RBR", "MMM"], {
    R: "irons_spellbooks:fire_rune",
    B: Item.of(
      "minecraft:leather_boots",
      '{Damage:0,ISBUpgrades:[{id:"irons_spellbooks:fire_power",slot:"feet",upgrades:10}]}'
    ).weakNBT(),
    M: "irons_spellbooks:magic_cloth",
  });

  event.shaped("artifacts:cloud_in_a_bottle", ["ALA", "RCR", "ALA"], {
    R: "irons_spellbooks:lightning_rune",
    L: "irons_spellbooks:lightning_bottle",
    C: "quark:bottled_cloud",
    A: "irons_spellbooks:arcane_essence",
  });

  event.shaped("artifacts:aqua_dashers", ["MKM", "RBR", "MKM"], {
    R: "irons_spellbooks:ice_rune",
    B: Item.of(
      "minecraft:leather_boots",
      '{Damage:0,ISBUpgrades:[{id:"irons_spellbooks:ice_power",slot:"feet",upgrades:5}]}'
    ).weakNBT(),
    M: "irons_spellbooks:magic_cloth",
    K: "vinery:kelp_cider",
  });

  event.shaped("artifacts:panic_necklace", ["L L", " P ", " W "], {
    P: "eidolon:sanguine_amulet",
    L: "eidolon:raven_feather",
    W: "eidolon:arcane_seal",
  });

  event.shaped("artifacts:thorn_pendant", [" H ", "CPC", " H "], {
    P: "eidolon:basic_amulet",
    C: "minecraft:cactus",
    H: "eidolon:withered_heart",
  });

  event.shaped("artifacts:steadfast_spikes", [" L ", " W ", " S "], {
    L: "eidolon:lesser_soul_gem",
    W: "eidolon:warlock_boots",
    S: "eidolon:resolute_belt",
  });

  event.shaped("artifacts:flippers", ["FWF"], {
    F: "aquamirae:fin",
    W: "eidolon:warlock_boots",
  });

  event.shaped("artifacts:flame_pendant", ["FPF", " E "], {
    P: "eidolon:basic_amulet",
    F: "irons_spellbooks:fire_rune",
    E: "embers:ember_crystal_cluster",
  });

  event.shaped("artifacts:snowshoes", [" A ", "FDF", " A "], {
    D: "artifacts:aqua_dashers",
    F: "embers:ashen_fabric",
    A: "embers:adhesive",
  });

  event.shaped("artifacts:obsidian_skull", ["OSO", "SWS", "OSO"], {
    W: "minecraft:wither_skeleton_skull",
    O: "minecraft:obsidian",
    S: "embers:shifting_scales",
  });

  event.shaped("artifacts:pocket_piston", [" P ", " H "], {
    P: "minecraft:piston",
    H: "artifacts:power_glove",
  });

  event.shaped("artifacts:antidote_vessel", [" C ", "RVE", " H "], {
    V: "biomancy:vial",
    C: "biomancy:cleansing_serum",
    R: "biomancy:rejuvenation_serum",
    E: "biomancy:exotic_compound",
    H: "biomancy:healing_additive",
  });

  event.shaped("artifacts:onion_ring", ["BON", "OPO", "NOB"], {
    P: "biomancy:primordial_core",
    B: "biomancy:bloomberry",
    O: "farmersdelight:onion",
    N: "biomancy:nutrient_bar",
  });

  event.shaped("artifacts:villager_hat", [" V ", " S ", " T "], {
    V: "irons_spellbooks:villager_spell_book",
    S: "vinery:straw_hat",
    T: "ars_nouveau:ritual_restoration",
  });

  event.shaped("artifacts:cowboy_hat", [" L ", " G ", " H "], {
    L: Item.of(
      "minecraft:lingering_potion",
      '{Potion:"minecraft:strong_swiftness"}'
    ).weakNBT(),
    G: "ars_elemental:earth_hat",
    H: "ars_nouveau:glyph_summon_steed",
  });

  event.shaped("artifacts:umbrella", [" S ", " U "], {
    S: "ars_nouveau:enchanters_shield",
    U: "beachparty:beach_parasol",
  });

  event.shaped("artifacts:lucky_scarf", ["CMC", "MSM", "CMC"], {
    S: "artifacts:scarf_of_invisibility",
    M: "ars_nouveau:magebloom_fiber",
    C: "buzzier_bees:four_leaf_clover",
  });

  event.shaped("artifacts:helium_flamingo", [" O ", "PLP", " P "], {
    P: "handcrafted:pink_sheet",
    O: "nightlights:octopus_pink",
    L: "ars_nouveau:belt_of_levitation",
  });

  event.shaped("artifacts:bunny_hoppers", ["MMM", "RFR", "MMM"], {
    R: "minecraft:rabbit_foot",
    F: "grapplemod:longfallboots",
    M: "ars_nouveau:thread_feather",
  });

  // Misc
  event.smoking(
    "quark:bottled_cloud",
    Item.of("minecraft:potion", { Potion: "minecraft:water" })
  );
  event.shapeless("upgrade_aquatic:driftwood_planks", [
    "aquaculture:driftwood",
  ]);
  event.shapeless("8x minecraft:calcite", [
    "minecraft:smooth_basalt",
    "biomancy:mineral_fragment",
  ]);
  event.shaped("8x upgrade_aquatic:coralstone", ["SSS", "SNS", "SSS"], {
    S: "minecraft:stone_bricks",
    N: "minecraft:nautilus_shell",
  });

  // Compat
  event.shaped("oceansdelight:fugu_roll", ["PP ", "R  "], {
    P: "crabbersdelight:pufferfish_slice",
    R: "farmersdelight:cooked_rice",
  });
  event.shaped("oceansdelight:fugu_roll", ["csc", "c c", "ccc"], {
    s: "minecraft:string",
    c: "farmersdelight:canvas",
  });

  // Lead/Silver management
  event.shapeless("eidolon:lead_block", ["oreganized:lead_block"]);
  event.shapeless("eidolon:silver_block", ["oreganized:silver_block"]);
  event.shapeless("embers:lead_block", ["oreganized:lead_block"]);
  event.shapeless("embers:silver_block", ["oreganized:silver_block"]);
  event.shapeless("oreganized:lead_block", ["eidolon:lead_block"]);
  event.shapeless("oreganized:silver_block", ["eidolon:silver_block"]);
  event.shapeless("oreganized:lead_block", ["embers:lead_block"]);
  event.shapeless("oreganized:silver_block", ["embers:silver_block"]);

  // Dramatic Doors
  event.shapeless("dramaticdoors:short_azalea_door", [
    "dramaticdoors:short_quark_azalea_door",
    "minecraft:blue_dye",
  ]);
  event.shapeless("dramaticdoors:tall_azalea_door", [
    "dramaticdoors:tall_quark_azalea_door",
    "minecraft:blue_dye",
  ]);
  event.shapeless("dramaticdoors:short_aspen_door", [
    "dramaticdoors:short_pewen_door",
    "minecraft:yellow_dye",
  ]);
  event.shapeless("dramaticdoors:tall_aspen_door", [
    "dramaticdoors:tall_pewen_door",
    "minecraft:yellow_dye",
  ]);
  event.shapeless("dramaticdoors:short_grimwood_door", [
    "dramaticdoors:short_soulblight_door",
    "minecraft:black_dye",
  ]);
  event.shapeless("dramaticdoors:tall_grimwood_door", [
    "dramaticdoors:tall_soulblight_door",
    "minecraft:black_dye",
  ]);
  event.shapeless("dramaticdoors:short_wisteria_door", [
    "dramaticdoors:short_oak_door",
    "minecraft:white_dye",
  ]);
  event.shapeless("dramaticdoors:tall_wisteria_door", [
    "dramaticdoors:tall_oak_door",
    "minecraft:white_dye",
  ]);
  event.shapeless("dramaticdoors:short_poise_door", [
    "dramaticdoors:short_crimson_door",
    "minecraft:magenta_dye",
  ]);
  event.shapeless("dramaticdoors:tall_poise_door", [
    "dramaticdoors:tall_crimson_door",
    "minecraft:magenta_dye",
  ]);
  event.shapeless("dramaticdoors:short_dark_cherry_door", [
    "dramaticdoors:short_cherry_door",
    "minecraft:black_dye",
  ]);
  event.shapeless("dramaticdoors:tall_dark_cherry_door", [
    "dramaticdoors:tall_cherry_door",
    "minecraft:black_dye",
  ]);
  event.shapeless("dramaticdoors:short_laurel_door", [
    "dramaticdoors:short_jungle_door",
    "minecraft:brown_dye",
  ]);
  event.shapeless("dramaticdoors:tall_laurel_door", [
    "dramaticdoors:tall_jungle_door",
    "minecraft:brown_dye",
  ]);
  event.shapeless("dramaticdoors:short_morado_door", [
    "dramaticdoors:short_mangrove_door",
    "minecraft:red_dye",
  ]);
  event.shapeless("dramaticdoors:tall_morado_door", [
    "dramaticdoors:tall_mangrove_door",
    "minecraft:red_dye",
  ]);
  event.shapeless("dramaticdoors:short_pine_door", [
    "dramaticdoors:short_jungle_door",
    "alexscaves:pine_nuts",
  ]);
  event.shapeless("dramaticdoors:tall_pine_door", [
    "dramaticdoors:tall_jungle_door",
    "alexscaves:pine_nuts",
  ]);
  event.shapeless("dramaticdoors:short_yucca_door", [
    "dramaticdoors:short_acacia_door",
    "minecraft:brown_dye",
  ]);
  event.shapeless("dramaticdoors:tall_yucca_door", [
    "dramaticdoors:tall_acacia_door",
    "minecraft:brown_dye",
  ]);
  event.shapeless("dramaticdoors:short_rosewood_door", [
    "dramaticdoors:short_mangrove_door",
    "minecraft:white_dye",
  ]);
  event.shapeless("dramaticdoors:tall_rosewood_door", [
    "dramaticdoors:tall_mangrove_door",
    "minecraft:white_dye",
  ]);
  event.shapeless("dramaticdoors:short_kousa_door", [
    "dramaticdoors:short_quark_azalea_door",
    "minecraft:light_blue_dye",
  ]);
  event.shapeless("dramaticdoors:tall_kousa_door", [
    "dramaticdoors:tall_quark_azalea_door",
    "minecraft:light_blue_dye",
  ]);
  event.shapeless("dramaticdoors:short_willow_door", [
    "dramaticdoors:short_quark_azalea_door",
    "minecraft:green_dye",
  ]);
  event.shapeless("dramaticdoors:tall_willow_door", [
    "dramaticdoors:tall_quark_azalea_door",
    "minecraft:green_dye",
  ]);
  event.shapeless("dramaticdoors:short_silver_door", [
    "dramaticdoors:short_iron_door",
    "oreganized:silver_ingot",
  ]);
  event.shapeless("dramaticdoors:tall_silver_door", [
    "dramaticdoors:tall_iron_door",
    "oreganized:silver_ingot",
  ]);

  event.stonecutting(
    "2x dramaticdoors:short_quark_blossom_door",
    "quark:blossom_door"
  );

  // Bakery
  event
    .shapeless("bakery:cake_dough", [
      "#bakery:wheat",
      "minecraft:egg",
      "minecraft:sugar",
      "cookingforblockheads:cow_jar",
    ])
    .keepIngredient("cookingforblockheads:cow_jar");
  event
    .shapeless("bakery:sweet_dough", [
      "#bakery:wheat",
      "minecraft:egg",
      "minecraft:sugar",
      "ars_elemental:everfull_urn",
    ])
    .keepIngredient("ars_elemental:everfull_urn");
  event
    .shapeless("3x farmersdelight:wheat_dough", [
      "3x minecraft:wheat",
      "ars_elemental:everfull_urn",
    ])
    .keepIngredient("ars_elemental:everfull_urn");
  event
    .shaped("4x candlelight:dough", ["   ", "WUW", "WWW"], {
      U: "ars_elemental:everfull_urn",
      W: "#brewery:wheat",
    })
    .keepIngredient("ars_elemental:everfull_urn");
  event.shapeless("4x herbalbrews:water_cup", ["minecraft:water_bucket"]);
  event.shapeless("herbalbrews:milk_coffee", [
    "herbalbrews:coffee",
    "farmersdelight:milk_bottle",
  ]);

  event.custom({
    type: "farmersdelight:cutting",
    ingredients: [{ item: "herbalbrews:lavender" }],
    tool: { tag: "forge:tools/knives" },
    result: [{ item: "herbalbrews:lavender_blossom", count: 2 }],
  });

  // Neptuna
  event.custom({
    type: "farmersdelight:cutting",
    ingredients: [{ item: "aquaculture:neptuna" }],
    tool: { tag: "forge:tools/knives" },
    result: [{ item: "aquaculture:neptunium_nugget", count: 1 }],
  });
});
