BlockStateProperty

Builder to create a 'BlockStateProperty' loot condition.

This condition compares the the block state obtained from the LootContext and attempts to match it to the given MCBlock. If this comparison succeeds, then the state is further compared according to the rules outlined in the StatePropertiesPredicate.

This condition thus passes only if the block matches the given one and, optionally, if all the state properties match according to the predicate given to this loot condition.

A 'BlockStateProperty' condition requires a block to be correctly built. Properties may or may not be specified.

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.loot.conditions.vanilla.BlockStateProperty;

Implemented Interfaces

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

Methods

withBlock

Sets the block that should be matched by the loot condition.

This parameter is required.

Returns: This builder for chaining.
Return Type: BlockStateProperty

ZenScript
Copy
BlockStateProperty.withBlock(block as MCBlock) as BlockStateProperty
ParameterTypeDescription
blockMCBlockThe block to be matched.
withStatePropertiesPredicate

Creates and sets the StatePropertiesPredicate that will be matched against the state's properties.

Any changes that have already been made to the predicate will be overwritten, effectively replacing the previous predicate, if any.

This parameter is optional.

Returns: This builder for chaining.
Return Type: BlockStateProperty

ZenScript
Copy
BlockStateProperty.withStatePropertiesPredicate(builder as Consumer<StatePropertiesPredicate>) as BlockStateProperty
ParameterTypeDescription
konstruktorConsumer<StatePropertiesPredicate>A consumer that will be used to configure the StatePropertiesPredicate.