const UNIVERSAL_HATED = [ "crabbersdelight:jar_of_pickles", "windswept:holly_berries", "crabbersdelight:sea_pickle_juice", "netherdepthsupgrade:lava_pufferfish", "netherdepthsupgrade:eyeball_fish", "minecraft:pufferfish", "autumnity:foul_berries", "society:supreme_mayonnaise", "society:wraptor_mayonnaise", "society:large_duck_mayonnaise", "society:turtle_mayonnaise", "society:large_mayonnaise", "society:mayonnaise", "society:penguin_mayonnaise", "society:birt_mayonnaise", "society:cruncher_mayonnaise", "society:parrot_mayonnaise", "society:turkey_mayonnaise", "minecraft:warped_fungus", "society:coconut_oil", "farmersdelight:rotten_tomato", "minecraft:poisonous_potato", "aquaculture:tin_can", "society:dried_tubabacco_leaf", "minecraft:nether_star", "society:tubabacco_leaf", "society:large_turkey_mayonnaise", "society:petrified_mayonnaise", "society:flamingo_mayonnaise", "society:duck_mayonnaise", "society:goose_mayonnaise", "society:large_goose_mayonnaise", "society:golden_mayonnaise", "society:dragon_mayonnaise", "society:sniffer_mayonnaise", "society:springling_mayonnaise", "farmersdelight:straw", "trials:ominous_bottle", "minecraft:echo_shard", "society:living_flesh", "minecraft:popped_chorus_fruit", "society:large_galliraptor_mayonnaise", "society:galliraptor_mayonnaise", "minecraft:dragon_head", "minecraft:dragon_egg", "vinery:rotten_cherry", "minecraft:crimson_fungus", "quark:dragon_scale", "society:mini_oni_eye", "society:rubber", "society:sap" ] const UNIVERSAL_DISLIKED = [ "#society:raw_logs", "create:experience_block", "create:experience_nugget", "snowpig:frozen_ham", "society:oil", "snowpig:frozen_porkchop", "twigs:bamboo_thatch", "automobility:dash_panel", "netherdepthsupgrade:bonefish", "netherdepthsupgrade:wither_bonefish", "society:magma_geode", "society:omni_geode", "society:frozen_geode", "society:battery", "society:oak_resin", "society:pine_tar", "beachparty:palm_log", "atmospheric:carmine_husk", "untitledduckmod:goose_foot", "society:geode", "aquaculture:box", "vintagedelight:ghost_charcoal", "trials:trial_key_ominous", "trials:trial_key", "farmersdelight:nether_salad", "vintagedelight:century_egg", "crabbersdelight:kelp_shake", "society:sturdy_bamboo_block" ] const UNIVERSAL_LIKED = [ "#etcetera:sweaters", "#etcetera:hats", "#society:mineral", "#forge:gems", "#society:pristine_mineral", "minecraft:totem_of_undying", "atmospheric:candied_orange_slices", "quark:diamond_heart", "society:mossberry", "society:mossberry_stew", "crabbersdelight:pearl", "society:furniture_box", "society:ancient_cookie" ] const UNIVERSAL_LOVED = [ "society:prismatic_shard", "minecraft:rabbit_foot", "herbalbrews:oolong_tea", "society:sunlit_pearl", "vinery:jellie_wine", "society:gnome", "society:bowl_of_soul", "crabbersdelight:pearl_block" ] const villagerSpecificGifts = new Map([ ["shepherd", { loved: ["society:mossberry", "society:spider_silk", "society:mocha", "society:dirty_chai", "society:merino_wool"], liked: ["herbalbrews:cinnamon_coffee", "society:cranberry", "society:boysenberry", "society:crystalberry", "society:salmonberry"], neutral: [], disliked: ["#society:mineral"], hated: ["#minecraft:flowers", "#forge:raw_meat", "minecraft:rabbit_foot", "#minecraft:fishes"], }], ["banker", { loved: ["society:legendary_ink", "wildernature:bison_horn", "candlelight:beef_wellington", "society:aged_goat_cheese_block", "meadow:goat_cheese_block"], liked: ["society:truffle_oil", "meadow:piece_of_goat_cheese", "society:mystic_syrup", "windswept:goat_stew", "society:ancient_vespertine"], neutral: ["#society:dish"], disliked: ["#society:farmer_product"], hated: ["society:energy_drink", "supplementaries:candy"], }], ["blacksmith", { loved: ["society:ember_crystal_cluster", "crittersandcompanions:dragonfly_wing", "windswept:lavender", "herbalbrews:hazelnut_coffee", "bakery:hazelnut_ella"], liked: ["#minecraft:flowers", "#forge:raw_materials", "pamhc2trees:hazelnutitem", "pamhc2trees:roastedhazelnutitem"], neutral: [], disliked: [], hated: [], }], ["carpenter", { loved: ["#gamediscs:game_discs", "society:steamy_gadget", "society:mossberry_stew", "trials:heavy_core", "vintagedelight:deluxe_granola_bar"], liked: ["vintagedelight:chocolate_nut_granola_bar", "vintagedelight:fruity_granola_bar", "vinery:straw_hat", "society:mossberry", "create:honeyed_apple"], neutral: ["#society:raw_logs"], disliked: [], hated: [], }], ["fisher", { loved: ["unusualfishmod:cooked_aero_mono_stick", "society:princess_hairbrush", "vintagedelight:century_egg", "society:aquamagical_dust", "society:heart_of_neptunium", "minecraft:heart_of_the_sea"], liked: ["#minecraft:fishes", "minecraft:nautilus_shell", "minecraft:echo_shard", "crittersandcompanions:clam", "botania:black_lotus", "#minecraft:decorated_pot_sherds"], neutral: [], disliked: ["crabbersdelight:pearl_block"], hated: [], }], ["market", { loved: ["#vinery:red_wine", "society:glitched_vhs", "windswept:elder_feather", "society:latte", "society:tubasmoke_carton", "society:ancient_vespertine"], liked: ["society:tubasmoke_stick", "society:energy_drink", "supplementaries:antique_ink", "herbalbrews:coffee", "untitledduckmod:duck_feather"], neutral: [], disliked: [], hated: ["herbalbrews:milk_coffee", "society:death_liquid"], }], ["librarian", { loved: ["#society:clothing"], liked: ["supplementaries:antique_ink", "#society:dish", "society:prismatic_shard", "herbalbrews:oolong_tea", "society:sunlit_pearl", "vinery:jellie_wine", "society:bowl_of_soul"], neutral: ["minecraft:rabbit_foot", "crabbersdelight:pearl_block"], disliked: ["#vinery:red_wine", "#vinery:white_wine"], hated: ["society:tubasmoke_stick", "society:tubasmoke_carton"], }], ["witch", { loved: ["#society:eldritch", "society:energy_drink", 'society:pink_energy_drink', 'society:white_energy_drink', 'society:mana_energy_drink', "society:latte", "society:mocha", "society:bowl_of_soul", "herbalbrews:milk_coffee", "herbalbrews:hazelnut_coffee"], liked: ["#society:mineral", "#minecraft:flowers", "herbalbrews:coffee", "society:espresso", "society:dirty_chai", "society:death_liquid"], neutral: ["#society:farmer_product",], disliked: ["society:truffle_tea"], hated: ["#minecraft:fishes", "herbalbrews:witch_hat"], }], ["trader", { loved: ["society:star_coquito", "society:starcardi", "society:truffle_tea", 'veggiesdelight:rice_and_vegetables', 'society:chicken_tortilla_soup'], liked: ["snuffles:frosty_fluff", "#society:mineral", "#society:dish", "society:prismatic_shard", "minecraft:rabbit_foot", "society:sunlit_pearl", "crabbersdelight:pearl_block"], neutral: [], disliked: ["#society:clothing"], hated: ["society:gnome", 'society:spider_silk'], }] ]); const includesItemOrHasTag = (array, item) => { if (array.length === 0) return false; let result = false; array.forEach((element) => { if (!result) { if (element.includes("#")) { result = Item.of(item).hasTag(element.slice(1)) } else { result = element.equals(item) } } }); return result; } global.getVillagerGiftResult = (npcId, gift) => { const giftDefs = villagerSpecificGifts.get(npcId) if (giftDefs) { if (includesItemOrHasTag(giftDefs.loved, gift)) return "loved"; if (includesItemOrHasTag(giftDefs.liked, gift)) return "liked"; if (includesItemOrHasTag(giftDefs.neutral, gift)) return "neutral"; if (includesItemOrHasTag(giftDefs.disliked, gift)) return "disliked"; if (includesItemOrHasTag(giftDefs.hated, gift)) return "hated"; } if (includesItemOrHasTag(UNIVERSAL_HATED, gift)) return "hated"; if (includesItemOrHasTag(UNIVERSAL_DISLIKED, gift)) return "disliked"; if (includesItemOrHasTag(UNIVERSAL_LIKED, gift)) return "liked"; if (includesItemOrHasTag(UNIVERSAL_LOVED, gift)) return "loved"; return "neutral" }