VillagerTrades

Importing the class

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
Copy
import crafttweaker.api.villagers.VillagerTrades;

Methods

addTrade

Adds a Villager Trade for emeralds for an Item. An example being, giving a villager 2 emeralds for an arrow.

Return Type: void

ZenScript
Copy
// VillagerTrades.addTrade(profession as MCVillagerProfession, villagerLevel as int, emeralds as int, forSale as ItemStack, maxTrades as int, xp as int, priceMult as float) as void

villagerTrades.addTrade(<profession:minecraft:farmer>, 1, 16, <item:minecraft:diamond>, 5, 2, 0.05);
ParameterTypeDescriptionOptionalDefaultValue
professionMCVillagerProfessionWhat profession this trade should be for.false
villagerLevelintThe level the Villager needs to be.false
emeraldsintThe amount of Emeralds.false
forSaleformat@@0 ItemStackWhat ItemStack is being sold (by the Villager).false
maxTradesintHow many times can this trade be done.false
xpintHow much Experience is given by trading.false
priceMultfloatWhen this trade is discounted, how much should it be discounted by.true1.0
addTrade

Adds a Villager Trade for an Item for an Item. An example being, giving a villager 2 diamonds for an arrow.

Return Type: void

ZenScript
Copy
// VillagerTrades.addTrade(profession as MCVillagerProfession, villagerLevel as int, input1 as ItemStack, forSale as ItemStack, maxTrades as int, xp as int, priceMult as float) as void

villagerTrades.addTrade(<profession:minecraft:farmer>, 1, <item:minecraft:dirt> * 16, <item:minecraft:diamond>, 5, 2, 0.05);
ParameterTypeDescriptionOptionalDefaultValue
professionMCVillagerProfessionWhat profession this trade should be for.false
villagerLevelintThe level the Villager needs to be.false
input1format@@0 ItemStackThe ItemStack that is being given to the Villager.false
forSaleformat@@0 ItemStackWhat ItemStack is being sold (by the Villager).false
maxTradesintHow many times can this trade be done.false
xpintHow much Experience is given by trading.false
priceMultfloatWhen this trade is discounted, how much should it be discounted by.true1.0
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.

Return Type: void

ZenScript
Copy
// VillagerTrades.addTrade(profession as MCVillagerProfession, villagerLevel as int, input1 as ItemStack, input2 as ItemStack, forSale as ItemStack, maxTrades as int, xp as int, priceMult as float) as void

villagerTrades.addTrade(<profession:minecraft:farmer>, 1, <item:minecraft:diamond> * 2, <item:minecraft:dirt> * 2, <item:minecraft:arrow>, 5, 2, 0.05);
ParameterTypeDescriptionOptionalDefaultValue
professionMCVillagerProfessionWhat profession this trade should be for.false
villagerLevelintThe level the Villager needs to be.false
input1format@@0 ItemStackThe main ItemStack that is being given to the Villager.false
input2format@@0 ItemStackThe secondary ItemStack that is being given to the Villager.false
forSaleformat@@0 ItemStackWhat ItemStack is being sold (by the Villager).false
maxTradesintHow many times can this trade be done.false
xpintHow much Experience is given by trading.false
priceMultfloatWhen this trade is discounted, how much should it be discounted by.true1.0
addWanderingTrade

Adds a Wandering Trader Trade for emeralds for an Item. An example being, giving a Wandering Trader 2 emeralds for an arrow.

Return Type: void

ZenScript
Copy
// VillagerTrades.addWanderingTrade(rarity as int, emeralds as int, forSale as ItemStack, maxTrades as int, xp as int) as void

villagerTrades.addWanderingTrade(1, 16, <item:minecraft:diamond>, 16, 2);
ParameterTypeDescription
rarityintThe rarity of the Trade. Valid options are 1 or 2. A Wandering Trader can only spawn with a single trade of rarity 2.
emeraldsintThe amount of Emeralds.
forSaleformat@@0 ItemStackWhat ItemStack is being sold (by the Wandering Trader).
maxTradesintHow many times can this trade be done.
xpintHow much Experience is given by trading.
addWanderingTrade

Adds a Wandering Trader Trade for emeralds for an Item. An example being, giving a Wandering Trader 2 emeralds for an arrow.

Return Type: void

ZenScript
Copy
// VillagerTrades.addWanderingTrade(rarity as int, price as IItemStack, forSale as IItemStack, maxTrades as int, xp as int) as void

villagerTrades.addWanderingTrade(1, <item:minecraft:dirt>, <item:minecraft:diamond>, 16, 2);
ParameterTypeDescription
rarityintThe rarity of the Trade. Valid options are 1 or 2. A Wandering Trader can only spawn with a single trade of rarity 2.
priceIItemStackThe ItemStack being given to the Wandering Trader.
forSaleIItemStackWhat ItemStack is being sold (by the Wandering Trader).
maxTradesintHow many times can this trade be done.
xpintHow much Experience is given by trading.
removeAllTrades

Removes all the trades for the given profession and villagerLevel

Return Type: void

ZenScript
Copy
VillagerTrades.removeAllTrades(profession as MCVillagerProfession, villagerLevel as int) as void
ParameterTypeDescription
professionMCVillagerProfessionhat profession to remove from.
villagerLevelintThe level the Villager needs to be.
removeAllWanderinTrades

Removes all wandering trades of the given rarity

Return Type: void

ZenScript
Copy
VillagerTrades.removeAllWanderinTrades(rarity as int) as void
ParameterTypeDescription
rarityintThe rarity of the Trade. Valid options are 1 or 2. A Wandering Trader can only spawn with a single trade of rarity 2.
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.

Return Type: void

ZenScript
Copy
// VillagerTrades.removeBasicTrade(profession as MCVillagerProfession, villagerLevel as int, forSale as IItemStack, price as IItemStack, price2 as IItemStack) as void

villagerTrades.removeBasicTrade(<profession:minecraft:farmer>, 1, <item:minecraft:arrow>, <item:minecraft:stick>, <item:minecraft:emerald>);
ParameterTypeDescriptionOptionalDefaultValue
professionMCVillagerProfessionWhat profession this trade should be for.false
villagerLevelintThe level the Villager needs to be.false
forSaleIItemStackWhat ItemStack is being sold (by the Villager).false
priceIItemStackNo Description Providedtrueitem:minecraft:air
price2IItemStackNo Description Providedtrueitem:minecraft:air
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.

Return Type: void

ZenScript
Copy
// VillagerTrades.removeDyedArmorForEmeraldsTrade(profession as MCVillagerProfession, villagerLevel as int, buyingItem as MCItemDefinition) as void

villagerTrades.removeDyedArmorForEmeraldsTrade(<profession:minecraft:leatherworker>, 1, <item:minecraft:leather_chestplate>);
ParameterTypeDescription
professionMCVillagerProfessionWhat profession this trade should be for.
villagerLevelintThe level the Villager needs to be.
buyingItemMCItemDefinitionThe base ItemStack that a random Dye colour will be applied to. E.G. A leather chestplate with no effect applied.
removeEmeraldForItemsTrade

Removes a Villager trade for Emeralds for Items. An example being, giving a villager 20 Wheat and getting an Emerald from the villager.

Return Type: void

ZenScript
Copy
// VillagerTrades.removeEmeraldForItemsTrade(profession as MCVillagerProfession, villagerLevel as int, tradeFor as MCItemDefinition) as void

villagerTrades.removeEmeraldForItemsTrade(<profession:minecraft:farmer>, 1, <item:minecraft:potato>.definition);
ParameterTypeDescription
professionMCVillagerProfessionWhat profession this trade should be for.
villagerLevelintThe level the Villager needs to be.
tradeForMCItemDefinitionWhat ItemStack is being sold (by the Villager).
removeEmeraldForMapTrade

Removes a Villager trade for a Map. An example being, giving a villager 13 Emeralds and getting a Map to a structure.

Return Type: void

ZenScript
Copy
// VillagerTrades.removeEmeraldForMapTrade(profession as MCVillagerProfession, villagerLevel as int) as void

villagerTrades.removeEmeraldForMapTrade(<profession:minecraft:cartographer>, 1);
ParameterTypeDescription
professionMCVillagerProfessionWhat profession this trade should be for.
villagerLevelintThe level the Villager needs to be.
removeEnchantedBookForEmeraldsTrade

Removes a Villager trade for an Enchanted Book. An example being, giving a villager Emeralds and getting an Enchanted Book with a random Enchantment.

Return Type: void

ZenScript
Copy
// VillagerTrades.removeEnchantedBookForEmeraldsTrade(profession as MCVillagerProfession, villagerLevel as int) as void

villagerTrades.removeEnchantedBookForEmeraldsTrade(<profession:minecraft:librarian>, 1);
ParameterTypeDescription
professionMCVillagerProfessionWhat profession this trade should be for.
villagerLevelintThe level the Villager needs to be.
removeEnchantedItemForEmeraldsTrade

Removes a Villager trade for an Enchanted Item. An example being, giving a villager 3 Emeralds and getting an Enchanted Pickaxe.

Return Type: void

ZenScript
Copy
// VillagerTrades.removeEnchantedItemForEmeraldsTrade(profession as MCVillagerProfession, villagerLevel as int, buyingItem as IItemStack) as void

villagerTrades.removeEnchantedItemForEmeraldsTrade(<profession:minecraft:armorer>, 1, <item:minecraft:diamond_boots>);
ParameterTypeDescription
professionMCVillagerProfessionWhat profession this trade should be for.
villagerLevelintThe level the Villager needs to be.
buyingItemIItemStackThe ItemStack that the Villager is selling (including any NBT).
removeItemWithPotionForEmeraldsAndItemsTrade

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.

Return Type: void

ZenScript
Copy
// VillagerTrades.removeItemWithPotionForEmeraldsAndItemsTrade(profession as MCVillagerProfession, villagerLevel as int, potionStack as IItemStack, sellingItem as MCItemDefinition) as void

villagerTrades.removeItemWithPotionForEmeraldsAndItemsTrade(<profession:minecraft:fletcher>, 1, <item:minecraft:tipped_arrow>, <item:minecraft:arrow>);
ParameterTypeDescription
professionMCVillagerProfessionWhat profession this trade should be for.
villagerLevelintThe level the Villager needs to be.
potionStackIItemStackThe base ItemStack that a random potion effect will be applied to. E.G. A tipped Arrow with no effect applied.
sellingItemMCItemDefinitionWhat ItemStack is being given to the Villager.
removeItemsForEmeraldsAndItemsTrade

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.

Return Type: void

ZenScript
Copy
// VillagerTrades.removeItemsForEmeraldsAndItemsTrade(profession as MCVillagerProfession, villagerLevel as int, sellingItem as IItemStack, buyingItem as IItemStack) as void

villagerTrades.removeItemsForEmeraldsAndItemsTrade(<profession:minecraft:fisherman>, 1, <item:minecraft:cooked_cod>, <item:minecraft:cod>);
ParameterTypeDescription
professionMCVillagerProfessionWhat profession this trade should be for.
villagerLevelintThe level the Villager needs to be.
sellingItemIItemStackWhat ItemStack is being given to the Villager.
buyingItemIItemStackThe item that the Villager is selling.
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.

Return Type: void

ZenScript
Copy
// VillagerTrades.removeItemsForEmeraldsTrade(profession as MCVillagerProfession, villagerLevel as int, sellingItem as IItemStack) as void

villagerTrades.removeItemsForEmeraldsTrade(<profession:minecraft:farmer>, 1, <item:minecraft:apple>);
ParameterTypeDescription
professionMCVillagerProfessionWhat profession this trade should be for.
villagerLevelintThe level the Villager needs to be.
sellingItemIItemStackWhat ItemStack is being given to the Villager.
removeSuspiciousStewForEmeraldTrade

Removes a Villager trade for Suspicious Stew. An example being, giving a villager an Emerald and getting a bowl of Suspicious Stew back.

Return Type: void

ZenScript
Copy
// VillagerTrades.removeSuspiciousStewForEmeraldTrade(profession as MCVillagerProfession, villagerLevel as int) as void

villagerTrades.removeSuspiciousStewForEmeraldTrade(<profession:minecraft:farmer>, 1);
ParameterTypeDescription
professionMCVillagerProfessionWhat profession this trade should be for.
villagerLevelintThe level the Villager needs to be.
removeWanderingTrade

Removes a Wandering Trader trade for Emeralds for Items. An example being, giving a Wandering Trader 2 Emeralds for an Arrow.

Return Type: void

ZenScript
Copy
// VillagerTrades.removeWanderingTrade(rarity as int, tradeFor as IItemStack) as void

villagerTrades.removeWanderingTrade(2, <item:minecraft:arrow>);
ParameterTypeDescription
rarityintThe rarity of the Trade. Valid options are 1 or 2. A Wandering Trader can only spawn with a single trade of rarity 2.
tradeForIItemStackWhat ItemStack is being sold (by the Villager).