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

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);
 });
ParametroTipoDescrizione
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));
ParametroTipoDescrizione
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);
ParametroTipoDescrizioneOptionalDefault 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
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);
ParametroTipoDescrizioneOptionalDefault 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
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);
ParametroTipoDescrizioneOptionalDefault 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
Default Value
1.0

Link to addWanderingTrade

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));
ParametroTipoDescrizione
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.

Link to addWanderingTrade

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);
ParametroTipoDescrizione
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.

Link to addWanderingTrade

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);
ParametroTipoDescrizione
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);
ParametroTipoDescrizione
Parametro
profession
Tipo
VillagerProfession
Descrizione
hat profession to remove from.
Parametro
villagerLevel
Tipo
int
Descrizione
The level the Villager needs to be.

Link to removeAllWanderingTrades

Name: removeAllWanderingTrades

Removes all wandering trades of the given rarity

ZenScript
Copy
VillagerTrades.removeAllWanderingTrades(rarity as int)
ParametroTipoDescrizione
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.

Link to removeBasicTrade

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>);
ParametroTipoDescrizioneOptionalDefault 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
Default Value
item:minecraft:air
Parametro
price2
Tipo
IItemStack
Descrizione
Optional
Default Value
item:minecraft:air

Link to removeDyedArmorForEmeraldsTrade

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>);
ParametroTipoDescrizione
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.

Link to removeEmeraldForItemsTrade

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);
ParametroTipoDescrizione
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).

Link to removeEnchantBookForEmeraldsTrade

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);
ParametroTipoDescrizione
Parametro
profession
Tipo
VillagerProfession
Descrizione
What profession this trade should be for.
Parametro
villagerLevel
Tipo
int
Descrizione
The level the Villager needs to be.

Link to removeEnchantedItemForEmeraldsTrade

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>);
ParametroTipoDescrizione
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).

Link to removeItemsAndEmeraldsToItemsTrade

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>);
ParametroTipoDescrizione
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.

Link to removeItemsForEmeraldsTrade

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>);
ParametroTipoDescrizione
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.

Link to removeSuspiciousStewForEmeraldTrade

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);
ParametroTipoDescrizione
Parametro
profession
Tipo
VillagerProfession
Descrizione
What profession this trade should be for.
Parametro
villagerLevel
Tipo
int
Descrizione
The level the Villager needs to be.

Link to removeTippedArrowForItemsAndEmeraldsTrade

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>);
ParametroTipoDescrizione
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>);
ParametroTipoDescrizioneOptionalDefault 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
Default Value
item:minecraft:air

Link to removeTradesBuying

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>);
ParametroTipoDescrizione
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.

Link to removeTradesBuying

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>);
ParametroTipoDescrizione
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.

Link to removeTradesSelling

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>);
ParametroTipoDescrizione
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.

Link to removeTreasureMapForEmeraldsTrade

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);
ParametroTipoDescrizione
Parametro
profession
Tipo
VillagerProfession
Descrizione
What profession this trade should be for.
Parametro
villagerLevel
Tipo
int
Descrizione
The level the Villager needs to be.

Link to removeWanderingTrade

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>);
ParametroTipoDescrizione
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).