Class SetContainerLootTable
java.lang.Object
net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction
net.minecraft.world.level.storage.loot.functions.SetContainerLootTable
- All Implemented Interfaces:
BiFunction<ItemStack,
,LootContext, ItemStack> LootItemFunction
,LootContextUser
LootItemFunction that sets the LootTable and optionally the loot table seed on the stack's
BlockEntityTag
. The effect of this is that containers such as chests will receive the given LootTable when placed.-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction
LootItemConditionalFunction.Builder<T extends LootItemConditionalFunction.Builder<T>>, LootItemConditionalFunction.DummyBuilder
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final com.mojang.serialization.MapCodec
<SetContainerLootTable> private final ResourceKey
<LootTable> private final long
private final Holder
<BlockEntityType<?>> Fields inherited from class net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction
predicates
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
SetContainerLootTable
(List<LootItemCondition> p_298290_, ResourceKey<LootTable> p_335525_, long p_193047_, Holder<BlockEntityType<?>> p_298416_) -
Method Summary
Modifier and TypeMethodDescriptiongetType()
run
(ItemStack pStack, LootContext pContext) Called to perform the actual action of this function, after conditions have been checked.void
validate
(ValidationContext pContext) Validate that this object is used correctly according to the given ValidationContext.static LootItemConditionalFunction.Builder
<?> withLootTable
(BlockEntityType<?> pType, ResourceKey<LootTable> pToolTable) static LootItemConditionalFunction.Builder
<?> withLootTable
(BlockEntityType<?> pType, ResourceKey<LootTable> pLootTable, long pSeed) Methods inherited from class net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction
apply, commonFields, simpleBuilder
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.function.BiFunction
andThen
Methods inherited from interface net.minecraft.world.level.storage.loot.LootContextUser
getReferencedContextParams
-
Field Details
-
CODEC
-
name
-
seed
private final long seed -
type
-
-
Constructor Details
-
SetContainerLootTable
private SetContainerLootTable(List<LootItemCondition> p_298290_, ResourceKey<LootTable> p_335525_, long p_193047_, Holder<BlockEntityType<?>> p_298416_)
-
-
Method Details
-
getType
- Specified by:
getType
in interfaceLootItemFunction
- Specified by:
getType
in classLootItemConditionalFunction
-
run
Called to perform the actual action of this function, after conditions have been checked.- Specified by:
run
in classLootItemConditionalFunction
-
validate
Validate that this object is used correctly according to the given ValidationContext.- Specified by:
validate
in interfaceLootContextUser
- Overrides:
validate
in classLootItemConditionalFunction
-
withLootTable
public static LootItemConditionalFunction.Builder<?> withLootTable(BlockEntityType<?> pType, ResourceKey<LootTable> pToolTable) -
withLootTable
public static LootItemConditionalFunction.Builder<?> withLootTable(BlockEntityType<?> pType, ResourceKey<LootTable> pLootTable, long pSeed)
-