VillagerTrades
Link to villagertrades
Importare la Classe
Link to importare-la-classe
It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.
ZenScript Copyimport crafttweaker.api.villagers.VillagerTrades;
Metodi
Link to metodi
Name: addTrade
Adds a new custom trade with the selling and buying items determined by the custom MerchantOffer generator.
The function will only run when the villager resolves the trade.
ZenScript Copy// VillagerTrades.addTrade(profession as VillagerProfession, villagerLevel as int, offerGenerator as BiFunction<Entity,RandomSource,MerchantOffer?>)
villagerTrades.addTrade(<profession:minecraft:farmer>, 1, (entity, random) => {
return new MerchantOffer(<item:minecraft:dirt>, <item:minecraft:diamond>, 16, 0, 5);
});
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Parametro offerGenerator | Tipo BiFunction<Entity,RandomSource,MerchantOffer?> | Descrizione A generator method to make a new MerchantOffer. |
Name: addTrade
Adds the specified ItemListing trade.
ZenScript Copy// VillagerTrades.addTrade(profession as VillagerProfession, villagerLevel as int, trade as ItemListing)
villagerTrades.addTrade(<profession:minecraft:farmer>, 1, TreasureMapForEmeralds.create(1, <resource:minecraft:ruined_portal>, "display Name", <constant:minecraft:world/map/decorationtype:mansion>, 16, 8));
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Parametro trade | Tipo ItemListing | Descrizione The trade to add. |
Name: addTrade
Adds a Villager Trade for emeralds for an Item. An example being, giving a villager 2 emeralds for an arrow.
ZenScript Copy// VillagerTrades.addTrade(profession as VillagerProfession, villagerLevel as int, emeralds as int, forSale as ItemStack, maxTrades as int, xp as int, priceMult as float)
villagerTrades.addTrade(<profession:minecraft:farmer>, 1, 16, <item:minecraft:diamond>, 5, 2, 0.05);
Parametro | Tipo | Descrizione | Optional | Default Value |
---|---|---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. | Optional no | Default Value |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. | Optional no | Default Value |
Parametro emeralds | Tipo int | Descrizione The amount of Emeralds. | Optional no | Default Value |
Parametro forSale | Tipo ItemStack | Descrizione What ItemStack is being sold (by the Villager). | Optional no | Default Value |
Parametro maxTrades | Tipo int | Descrizione How many times can this trade be done. | Optional no | Default Value |
Parametro xp | Tipo int | Descrizione How much Experience is given by trading. | Optional no | Default Value |
Parametro priceMult | Tipo float | Descrizione When this trade is discounted, how much should it be discounted by. | Optional sì | Default Value 1.0 |
Name: addTrade
Adds a Villager Trade for an Item for an Item. An example being, giving a villager 2 diamonds for an arrow.
ZenScript Copy// VillagerTrades.addTrade(profession as VillagerProfession, villagerLevel as int, input1 as ItemStack, forSale as ItemStack, maxTrades as int, xp as int, priceMult as float)
villagerTrades.addTrade(<profession:minecraft:farmer>, 1, <item:minecraft:dirt> * 16, <item:minecraft:diamond>, 5, 2, 0.05);
Parametro | Tipo | Descrizione | Optional | Default Value |
---|---|---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. | Optional no | Default Value |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. | Optional no | Default Value |
Parametro input1 | Tipo ItemStack | Descrizione The ItemStack that is being given to the Villager. | Optional no | Default Value |
Parametro forSale | Tipo ItemStack | Descrizione What ItemStack is being sold (by the Villager). | Optional no | Default Value |
Parametro maxTrades | Tipo int | Descrizione How many times can this trade be done. | Optional no | Default Value |
Parametro xp | Tipo int | Descrizione How much Experience is given by trading. | Optional no | Default Value |
Parametro priceMult | Tipo float | Descrizione When this trade is discounted, how much should it be discounted by. | Optional sì | Default Value 1.0 |
Name: addTrade
Adds a Villager Trade for two Items for an Item. An example being, giving a villager 2 diamonds and 2 dirt for an arrow.
ZenScript Copy// VillagerTrades.addTrade(profession as VillagerProfession, villagerLevel as int, input1 as ItemStack, input2 as ItemStack, forSale as ItemStack, maxTrades as int, xp as int, priceMult as float)
villagerTrades.addTrade(<profession:minecraft:farmer>, 1, <item:minecraft:diamond> * 2, <item:minecraft:dirt> * 2, <item:minecraft:arrow>, 5, 2, 0.05);
Parametro | Tipo | Descrizione | Optional | Default Value |
---|---|---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. | Optional no | Default Value |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. | Optional no | Default Value |
Parametro input1 | Tipo ItemStack | Descrizione The main ItemStack that is being given to the Villager. | Optional no | Default Value |
Parametro input2 | Tipo ItemStack | Descrizione The secondary ItemStack that is being given to the Villager. | Optional no | Default Value |
Parametro forSale | Tipo ItemStack | Descrizione What ItemStack is being sold (by the Villager). | Optional no | Default Value |
Parametro maxTrades | Tipo int | Descrizione How many times can this trade be done. | Optional no | Default Value |
Parametro xp | Tipo int | Descrizione How much Experience is given by trading. | Optional no | Default Value |
Parametro priceMult | Tipo float | Descrizione When this trade is discounted, how much should it be discounted by. | Optional sì | Default Value 1.0 |
Name: addWanderingTrade
Adds the specific ItemListing trade to the Wandering Trader
ZenScript Copy// VillagerTrades.addWanderingTrade(rarity as int, trade as ItemListing)
villagerTrades.addWanderingTrade(1, TreasureMapForEmeralds.create(1, <resource:minecraft:ruined_portal>, "display Name", <constant:minecraft:world/map/decorationtype:mansion>, 16, 8));
Parametro | Tipo | Descrizione |
---|---|---|
Parametro rarity | Tipo int | Descrizione The rarity of the Trade. Valid options are 1 or 2 . A Wandering Trader can only spawn with a single trade of rarity 2 . |
Parametro trade | Tipo ItemListing | Descrizione The trade to add. |
Name: addWanderingTrade
Adds a Wandering Trader Trade for emeralds for an Item. An example being, giving a Wandering Trader 2 emeralds for an arrow.
ZenScript Copy// VillagerTrades.addWanderingTrade(rarity as int, emeralds as int, forSale as ItemStack, maxTrades as int, xp as int)
villagerTrades.addWanderingTrade(1, 16, <item:minecraft:diamond>, 16, 2);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro rarity | Tipo int | Descrizione The rarity of the Trade. Valid options are 1 or 2 . A Wandering Trader can only spawn with a single trade of rarity 2 . |
Parametro emeralds | Tipo int | Descrizione The amount of Emeralds. |
Parametro forSale | Tipo ItemStack | Descrizione What ItemStack is being sold (by the Wandering Trader). |
Parametro maxTrades | Tipo int | Descrizione How many times can this trade be done. |
Parametro xp | Tipo int | Descrizione How much Experience is given by trading. |
Name: addWanderingTrade
Adds a Wandering Trader Trade for emeralds for an Item. An example being, giving a Wandering Trader 2 emeralds for an arrow.
ZenScript Copy// VillagerTrades.addWanderingTrade(rarity as int, price as IItemStack, forSale as IItemStack, maxTrades as int, xp as int)
villagerTrades.addWanderingTrade(1, <item:minecraft:dirt>, <item:minecraft:diamond>, 16, 2);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro rarity | Tipo int | Descrizione The rarity of the Trade. Valid options are 1 or 2 . A Wandering Trader can only spawn with a single trade of rarity 2 . |
Parametro price | Tipo IItemStack | Descrizione The ItemStack being given to the Wandering Trader. |
Parametro forSale | Tipo IItemStack | Descrizione What ItemStack is being sold (by the Wandering Trader). |
Parametro maxTrades | Tipo int | Descrizione How many times can this trade be done. |
Parametro xp | Tipo int | Descrizione How much Experience is given by trading. |
Name: removeAllTrades
Removes all the trades for the given profession and villagerLevel
ZenScript Copy// VillagerTrades.removeAllTrades(profession as VillagerProfession, villagerLevel as int)
villagerTrades.removeAllTrades(<profession:minecraft:farmer>, 1);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione hat profession to remove from. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Name: removeAllWanderingTrades
Removes all wandering trades of the given rarity
ZenScript CopyVillagerTrades.removeAllWanderingTrades(rarity as int)
Parametro | Tipo | Descrizione |
---|---|---|
Parametro rarity | Tipo int | Descrizione The rarity of the Trade. Valid options are 1 or 2 . A Wandering Trader can only spawn with a single trade of rarity 2 . |
Name: removeBasicTrade
Removes a BasicTrade
Villager trade. BasicTrades
are trades that allow any item, to any other item. It is only really used for mod recipes and is not used for any vanilla villager trade.
ZenScript Copy// VillagerTrades.removeBasicTrade(profession as VillagerProfession, villagerLevel as int, forSale as IItemStack, price as IItemStack, price2 as IItemStack)
villagerTrades.removeBasicTrade(<profession:minecraft:farmer>, 1, <item:minecraft:arrow>, <item:minecraft:stick>, <item:minecraft:emerald>);
Parametro | Tipo | Descrizione | Optional | Default Value |
---|---|---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. | Optional no | Default Value |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. | Optional no | Default Value |
Parametro forSale | Tipo IItemStack | Descrizione What ItemStack is being sold (by the Villager). | Optional no | Default Value |
Parametro price | Tipo IItemStack | Descrizione | Optional sì | Default Value item:minecraft:air |
Parametro price2 | Tipo IItemStack | Descrizione | Optional sì | Default Value item:minecraft:air |
Name: removeDyedArmorForEmeraldsTrade
Removes a Villager trade for Items for Dyed leather armor. An example being, giving a villager Leather Leggings and 3 Emeralds and getting a Blue Dyed Leather Leggings.
ZenScript Copy// VillagerTrades.removeDyedArmorForEmeraldsTrade(profession as VillagerProfession, villagerLevel as int, buyingItem as ItemDefinition)
villagerTrades.removeDyedArmorForEmeraldsTrade(<profession:minecraft:leatherworker>, 1, <item:minecraft:leather_chestplate>);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Parametro buyingItem | Tipo ItemDefinition | Descrizione The base ItemStack that a random Dye colour will be applied to. E.G. A leather chestplate with no effect applied. |
Name: removeEmeraldForItemsTrade
Removes a Villager trade for Emeralds for Items. An example being, giving a villager 20 Wheat and getting an Emerald from the villager.
ZenScript Copy// VillagerTrades.removeEmeraldForItemsTrade(profession as VillagerProfession, villagerLevel as int, tradeFor as ItemDefinition)
villagerTrades.removeEmeraldForItemsTrade(<profession:minecraft:farmer>, 1, <item:minecraft:potato>.definition);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Parametro tradeFor | Tipo ItemDefinition | Descrizione What ItemStack is being sold (by the Villager). |
Name: removeEnchantBookForEmeraldsTrade
Removes a Villager trade for an Enchanted Book. An example being, giving a villager Emeralds and getting an Enchanted Book with a random Enchantment.
ZenScript Copy// VillagerTrades.removeEnchantBookForEmeraldsTrade(profession as VillagerProfession, villagerLevel as int)
villagerTrades.removeEnchantBookForEmeraldsTrade(<profession:minecraft:librarian>, 1);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Name: removeEnchantedItemForEmeraldsTrade
Removes a Villager trade for an Enchanted Item. An example being, giving a villager 3 Emeralds and getting an Enchanted Pickaxe.
ZenScript Copy// VillagerTrades.removeEnchantedItemForEmeraldsTrade(profession as VillagerProfession, villagerLevel as int, buyingItem as IItemStack)
villagerTrades.removeEnchantedItemForEmeraldsTrade(<profession:minecraft:armorer>, 1, <item:minecraft:diamond_boots>);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Parametro buyingItem | Tipo IItemStack | Descrizione The ItemStack that the Villager is selling (including any NBT). |
Name: removeItemsAndEmeraldsToItemsTrade
Removes a Villager trade for Emeralds and Items for Items. An example being, giving a villager 6 uncooked Cod and an Emerald and getting back 6 Cooked Cod.
ZenScript Copy// VillagerTrades.removeItemsAndEmeraldsToItemsTrade(profession as VillagerProfession, villagerLevel as int, sellingItem as IItemStack, buyingItem as IItemStack)
villagerTrades.removeItemsAndEmeraldsToItemsTrade(<profession:minecraft:fisherman>, 1, <item:minecraft:cooked_cod>, <item:minecraft:cod>);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Parametro sellingItem | Tipo IItemStack | Descrizione What ItemStack is being given to the Villager. |
Parametro buyingItem | Tipo IItemStack | Descrizione The item that the Villager is selling. |
Name: removeItemsForEmeraldsTrade
Removes a Villager trade for Items for Emeralds. An example being, giving a villager an Emerald and getting 4 Pumpkin Pies from the villager.
ZenScript Copy// VillagerTrades.removeItemsForEmeraldsTrade(profession as VillagerProfession, villagerLevel as int, sellingItem as IItemStack)
villagerTrades.removeItemsForEmeraldsTrade(<profession:minecraft:farmer>, 1, <item:minecraft:apple>);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Parametro sellingItem | Tipo IItemStack | Descrizione What ItemStack is being given to the Villager. |
Name: removeSuspiciousStewForEmeraldTrade
Removes a Villager trade for Suspicious Stew. An example being, giving a villager an Emerald and getting a bowl of Suspicious Stew back.
ZenScript Copy// VillagerTrades.removeSuspiciousStewForEmeraldTrade(profession as VillagerProfession, villagerLevel as int)
villagerTrades.removeSuspiciousStewForEmeraldTrade(<profession:minecraft:farmer>, 1);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Name: removeTippedArrowForItemsAndEmeraldsTrade
Removes a Villager trade for Items for an Item with a PotionEffect. An example being, giving a villager an Arrow and an Emerald and getting a Tipped Arrow with night vision.
ZenScript Copy// VillagerTrades.removeTippedArrowForItemsAndEmeraldsTrade(profession as VillagerProfession, villagerLevel as int, potionStack as IItemStack, sellingItem as ItemDefinition)
villagerTrades.removeTippedArrowForItemsAndEmeraldsTrade(<profession:minecraft:fletcher>, 1, <item:minecraft:tipped_arrow>, <item:minecraft:arrow>);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Parametro potionStack | Tipo IItemStack | Descrizione The base ItemStack that a random potion effect will be applied to. E.G. A tipped Arrow with no effect applied. |
Parametro sellingItem | Tipo ItemDefinition | Descrizione What ItemStack is being given to the Villager. |
Name: removeTrade
Removes the specified trade for the given profession and villagerLevel.
ZenScript Copy// VillagerTrades.removeTrade(profession as VillagerProfession, villagerLevel as int, buying as IIngredient, selling as IIngredient, secondBuying as IIngredient)
villagerTrades.removeTrade(<profession:minecraft:farmer>, 1, <item:minecraft:potato>, <item:minecraft:emerald>, <item:minecraft:air>);
Parametro | Tipo | Descrizione | Optional | Default Value |
---|---|---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione That profession to remove from. | Optional no | Default Value |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. | Optional no | Default Value |
Parametro buying | Tipo IIngredient | Descrizione The first item that you are giving to the villager. | Optional no | Default Value |
Parametro selling | Tipo IIngredient | Descrizione The item that the villager is selling to you. | Optional no | Default Value |
Parametro secondBuying | Tipo IIngredient | Descrizione The second item that you are giving to the villager. Will default to air if not provided. | Optional sì | Default Value item:minecraft:air |
Name: removeTradesBuying
Removes all trades that have the specified item as the buying item for the given profession and villagerLevel.
ZenScript Copy// VillagerTrades.removeTradesBuying(profession as VillagerProfession, villagerLevel as int, buying as IIngredient)
villagerTrades.removeTradesBuying(<profession:minecraft:farmer>, 1, <item:minecraft:potato>);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione That profession to remove from. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Parametro buying | Tipo IIngredient | Descrizione The first item that you are giving to the villager. |
Name: removeTradesBuying
Removes all trades that have the specified items as the buying items for the given profession and villagerLevel.
ZenScript Copy// VillagerTrades.removeTradesBuying(profession as VillagerProfession, villagerLevel as int, buying as IIngredient, secondBuying as IIngredient)
villagerTrades.removeTradesBuying(<profession:minecraft:farmer>, 1, <item:minecraft:potato>, <item:minecraft:air>);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione That profession to remove from. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Parametro buying | Tipo IIngredient | Descrizione The first item that you are giving to the villager. |
Parametro secondBuying | Tipo IIngredient | Descrizione The second item that you are giving to the villager. Will default to air if not provided. |
Name: removeTradesSelling
Removes all trades that sell the specified item for the given profession and villagerLevel.
ZenScript Copy// VillagerTrades.removeTradesSelling(profession as VillagerProfession, villagerLevel as int, selling as IIngredient)
villagerTrades.removeTradesSelling(<profession:minecraft:farmer>, 1, <item:minecraft:emerald>);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione That profession to remove from. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Parametro selling | Tipo IIngredient | Descrizione The item that the villager is selling to you. |
Name: removeTreasureMapForEmeraldsTrade
Removes a Villager trade for a Map. An example being, giving a villager 13 Emeralds and getting a Map to a structure.
ZenScript Copy// VillagerTrades.removeTreasureMapForEmeraldsTrade(profession as VillagerProfession, villagerLevel as int)
villagerTrades.removeTreasureMapForEmeraldsTrade(<profession:minecraft:cartographer>, 1);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro profession | Tipo VillagerProfession | Descrizione What profession this trade should be for. |
Parametro villagerLevel | Tipo int | Descrizione The level the Villager needs to be. |
Name: removeWanderingTrade
Removes a Wandering Trader trade for Emeralds for Items. An example being, giving a Wandering Trader 2 Emeralds for an Arrow.
ZenScript Copy// VillagerTrades.removeWanderingTrade(rarity as int, tradeFor as IIngredient)
villagerTrades.removeWanderingTrade(2, <item:minecraft:arrow>);
Parametro | Tipo | Descrizione |
---|---|---|
Parametro rarity | Tipo int | Descrizione The rarity of the Trade. Valid options are 1 or 2 . A Wandering Trader can only spawn with a single trade of rarity 2 . |
Parametro tradeFor | Tipo IIngredient | Descrizione What ItemStack is being sold (by the Villager). |