LootContextBuilder
Creates a new LootContext using a builder style pattern.
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.
import crafttweaker.api.loot.LootContextBuilder;
Static Methods
Return Type: LootContextBuilder
LootContextBuilder.copy(context as LootContext) as LootContextBuilder
Parameter | Type |
---|---|
Parameter context | Type LootContext |
Creates a new builder with the given level.
Returns: A new builder.
Return Type: LootContextBuilder
LootContextBuilder.create(level as ServerLevel) as LootContextBuilder
Parameter | Type | Description |
---|---|---|
Parameter level | Type ServerLevel | Description The level the loot will be rolled in. |
Methods
Creates a new LootContext with the given LootContextParamSet.
The given LootContextParamSet is used to determine what values are required for the context to be used.
Returns: a new LootContext
Return Type: LootContext
// LootContextBuilder.build(contextParamSet as LootContextParamSet) as LootContext
new LootContextBuilder(level).build(LootContextParamSets.gift());
Parameter | Type | Description |
---|---|---|
Parameter contextParamSet | Type LootContextParamSet | Description The LootContextParamSet to use. |
Creates a new LootContext with the given LootContextParamSet.
The given LootContextParamSet is used to determine what values are required for the context to be used.
Returns: a new LootContext
Return Type: LootContext
// LootContextBuilder.create(contextParamSet as LootContextParamSet) as LootContext
new LootContextBuilder(level).create(LootContextParamSets.gift());
Parameter | Type | Description |
---|---|---|
Parameter contextParamSet | Type LootContextParamSet | Description The LootContextParamSet to use. |
Gets the level that this builder uses.
Returns: The level that this builder uses.
Return Type: ServerLevel
// LootContextBuilder.getLevel() as ServerLevel
new LootContextBuilder(level).getLevel();
Gets the provided value of the optional parameter.
Returns: The value if found, null otherwise.
Return Type: @org.openzen.zencode.java.ZenCodeType.Nullable T
LootContextBuilder.getOptionalParameter<T : Object>(contextParam as LootContextParam<T>) as @org.openzen.zencode.java.ZenCodeType.Nullable T
Parameter | Type | Description |
---|---|---|
Parameter contextParam | Type LootContextParam<T> | Description The LootContextParam<T> to get the value of. |
Parameter T | Type Object | Description The type that the LootContextParam<T> uses |
Gets the provided value of the parameter.
Returns: The found value.
Return Type: T
LootContextBuilder.getParameter<T : Object>(contextParam as LootContextParam<T>) as T
Parameter | Type | Description |
---|---|---|
Parameter contextParam | Type LootContextParam<T> | Description The LootContextParam<T> to get the value of. |
Parameter T | Type Object | Description The type that the LootContextParam<T> uses |
Provides the given luck value to the context.
Returns: This builder for chaining purposes.
Return Type: LootContextBuilder
// LootContextBuilder.withLuck(luck as float) as LootContextBuilder
new LootContextBuilder(level).withLuck(0.5);
Parameter | Type | Description |
---|---|---|
Parameter luck | Type float | Description The luck value to use. |
Provides an optional parameter to this builder.
Returns: This builder for chaining purposes.
Return Type: LootContextBuilder
LootContextBuilder.withOptionalParameter<T : Object>(contextParam as LootContextParam<T>, actor as @org.openzen.zencode.java.ZenCodeType.Nullable T) as LootContextBuilder
Parameter | Type | Description |
---|---|---|
Parameter contextParam | Type LootContextParam<T> | Description The param to add. |
Parameter actor | Type @org.openzen.zencode.java.ZenCodeType.Nullable T | Description The optional actor used by the param. |
Parameter T | Type Object | Description The type of actor that the param uses. |
Supplies a seed to be passed into a new Random.
Returns: This builder for chaining purposes.
Return Type: LootContextBuilder
// LootContextBuilder.withOptionalRandomSeed(seed as long) as LootContextBuilder
new LootContextBuilder(level).withOptionalRandomSeed(0);
Parameter | Type | Description |
---|---|---|
Parameter seed | Type long | Description The seed to use. |
Supplies either a seed to be passed into a new Random or if the seed
is 0
use the given Random
Returns: This builder for chaining purposes.
Return Type: LootContextBuilder
// LootContextBuilder.withOptionalRandomSeed(seed as long, random as RandomSource) as LootContextBuilder
new LootContextBuilder(level).withOptionalRandomSeed(1, level.random);
Parameter | Type | Description |
---|---|---|
Parameter seed | Type long | Description The seed to use. |
Parameter random | Type RandomSource | Description The random source to provide. |
Provides a parameter to this builder.
Returns: This builder for chaining purposes.
Return Type: LootContextBuilder
LootContextBuilder.withParameter<T : Object>(contextParam as LootContextParam<T>, actor as T) as LootContextBuilder
Parameter | Type | Description |
---|---|---|
Parameter contextParam | Type LootContextParam<T> | Description The param to add. |
Parameter actor | Type T | Description The actor used by the param. |
Parameter T | Type Object | Description The type of actor that the param uses. |
Supplies a Random source to the built context.
Returns: This builder for chaining purposes.
Return Type: LootContextBuilder
// LootContextBuilder.withRandom(random as RandomSource) as LootContextBuilder
new LootContextBuilder(level).withRandom(level.random);
Parameter | Type | Description |
---|---|---|
Parameter random | Type RandomSource | Description The random source to provide. |
Properties
Name | Type | Has Getter | Has Setter | Description |
---|---|---|---|---|
Name level | Type ServerLevel | Has Getter true | Has Setter false | Description Gets the level that this builder uses. |