The item builder is to... build items (surprise!)

It allows you to set various properties that will change how the item behaves and what it can do. You can also use [mods.contenttweaker.item.ItemBuilder#withType](/mods/contenttweaker/API/item/ItemBuilder/#withtype) to switch to a more specialized builder, if there exist any.

To tell CoT that you want the item to appear ingame you need to call [mods.contenttweaker.item.ItemBuilder#build(String)](/mods/contenttweaker/API/item/ItemBuilder/#build) and specify a valid resource location path.

This class was added by a mod with mod-id contenttweaker. So you need to have this mod installed if you want to use this feature.

Importing the class

Link to 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.

ZenScript
Copy
mods.contenttweaker.item.ItemBuilder

Implemented Interfaces

Link to implemented-interfaces

ItemBuilder implements the following interfaces. That means any method available to them can also be used on this class.

Creates a new ItemBuilder. Remember that this will not create a new block in the game, you need to call mods.contenttweaker.item.ItemBuilder#build(String) for that.

ZenScript
Copy
new mods.contenttweaker.item.ItemBuilder();

Instructs CoT to actually build whatever this builder is supposed to be building.

ZenScript
Copy
new ItemBuilder().build(resourceLocation as String);
new ItemBuilder().build("my_awesome_block");
ParameterTypeDescription
Parameter
resourceLocation
Type
String
Description
The resource path to give this block

Allows you to set the item group that this item will appear in. By default, items will land in misc

Returns: This builder, used for method chaining

Return type: mods.contenttweaker.item.ItemBuilder

ZenScript
Copy
new ItemBuilder().withItemGroup(itemGroup as mods.contenttweaker.item.MCItemGroup);
new ItemBuilder().withItemGroup(<itemgroup:misc>);
ParameterTypeDescription
Parameter
itemGroup
Type
mods.contenttweaker.item.MCItemGroup
Description
The item group this item should appear in

Allows you to set the maximum damage for this item.
Be warned that this cannot be used in combination with mods.contenttweaker.item.ItemBuilder#withMaxStackSize!

Returns: This builder, used for method chaining

Return type: mods.contenttweaker.item.ItemBuilder

ZenScript
Copy
new ItemBuilder().withMaxDamage(maxDamage as int);
new ItemBuilder().withMaxDamage(250);
ParameterTypeDescription
Parameter
maxDamage
Type
int
Description
The maximum stack size

withMaxStackSize

Link to withmaxstacksize

Allows you to set the maximum stack size for this item.
Be warned that this cannot be used in combination with mods.contenttweaker.item.ItemBuilder#withMaxDamage!

Returns: This builder, used for method chaining

Return type: mods.contenttweaker.item.ItemBuilder

ZenScript
Copy
new ItemBuilder().withMaxStackSize(maxStackSize as int);
new ItemBuilder().withMaxStackSize(16);
ParameterTypeDescription
Parameter
maxStackSize
Type
int
Description
The maximum stack size

Sets that this item may not be repaired in an anvil Returns: This builder, used for method chaining

Return type: mods.contenttweaker.item.ItemBuilder

ZenScript
Copy
new ItemBuilder().withNoRepair();

Allows you to set the item's rarity

Returns: This builder, used for method chaining

Return type: mods.contenttweaker.item.ItemBuilder

ZenScript
Copy
new ItemBuilder().withRarity(rarity as String);
new ItemBuilder().withRarity("EPIC");
ParameterTypeDescription
Parameter
rarity
Type
String
Description
The rarity

Sets the specific type of this item. After this method is called the builder's context will switch to the more provided type builder. That means that the methods of this builder will no longer be available, so any properties you wish to set should be set before you call this method. Returns: A builder with the given item.

Return type: T

ZenScript
Copy
new ItemBuilder().withType<T>();
new ItemBuilder().withType<mods.contenttweaker.item.tool.ItemBuilderTool>();
ParameterNameBounds
ParameterName
T
Bounds
mods.contenttweaker.item.ItemTypeBuilder