Home Migration Guide Getting Started With Scripts Commands Examples
BracketHandlers

MCWeightedItemStack

An ItemStack with a chance, usually used for recipe outputs.

Careful, if the stack that was used to create the WeightedStack was mutable, then the size setter will mutate the original stack as well!

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.

script.zs
import crafttweaker.api.item.MCWeightedItemStack;

Implemented Interfaces

MCWeightedItemStack implements the following interfaces. That means all methods defined in these interfaces are also available in MCWeightedItemStack

Constructors

Manually creates the weightedItemStack.
Usually you can use the operator or .weight(weight) method of IItemStack, though

script.zs
new MCWeightedItemStack(itemStack as IItemStack, weight as double) as MCWeightedItemStack
new MCWeightedItemStack(<item:minecraft:bedrock>, 0.5D);
ParameterTypeDescription
Parameter
itemStack
Type
IItemStack
Description
The Stack
Parameter
weight
Type
double
Description
The chance, between 0 (0%) and 1 (100%)

Methods

Creates a new Weighted Stack with the given weight

Returns: A new WeightedItemStack
Return Type: MCWeightedItemStack

script.zs
// MCWeightedItemStack.weight(newWeight as double) as MCWeightedItemStack
<item:minecraft:bedrock>.weight(0.5D).weight(0.75D);
ParameterTypeDescription
Parameter
newWeight
Type
double
Description
The percentage

Operators

Creates a new Weighted Stack with the given percentage

script.zs
myMCWeightedItemStack % newWeight as int
<item:minecraft:bedrock>.weight(0.5D) % 75

Sets the itemStack’s amount.

If the original Stack was mutable, also mutates the original stack’s size.

script.zs
myMCWeightedItemStack * newAmount as int
<item:minecraft:bedrock>.weight(0.5D) * 5

Properties

NameTypeHas GetterHas SetterDescription
Name
stack
Type
IItemStack
Has Getter
true
Has Setter
false
Description
Gets the original (unweighted) stack
Name
weight
Type
double
Has Getter
true
Has Setter
false
Description
Gets the weight (usually between 0 and 1)