Class EnchantRandomlyFunction
java.lang.Object
net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction
net.minecraft.world.level.storage.loot.functions.EnchantRandomlyFunction
- All Implemented Interfaces:
BiFunction<ItemStack,,LootContext, ItemStack> LootItemFunction,LootContextUser
LootItemFunction that applies a random enchantment to the stack. If an empty list is given, chooses from all enchantments.
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction
LootItemConditionalFunction.DummyBuilder -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final com.mojang.serialization.MapCodec<EnchantRandomlyFunction> private static final org.slf4j.Loggerprivate final booleanprivate final Optional<HolderSet<Enchantment>> Fields inherited from class net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction
predicates -
Constructor Summary
ConstructorsConstructorDescriptionEnchantRandomlyFunction(List<LootItemCondition> pConditons, Optional<HolderSet<Enchantment>> pOptions, boolean pOnlyCompatible) -
Method Summary
Modifier and TypeMethodDescriptionprivate static ItemStackenchantItem(ItemStack pStack, Holder<Enchantment> pEnchantment, RandomSource pRandom) getType()randomApplicableEnchantment(HolderLookup.Provider pRegistries) run(ItemStack pStack, LootContext pContext) Called to perform the actual action of this function, after conditions have been checked.Methods inherited from class net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction
apply, commonFields, simpleBuilder, validateMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.function.BiFunction
andThenMethods inherited from interface net.minecraft.world.level.storage.loot.LootContextUser
getReferencedContextParams
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
CODEC
-
options
-
onlyCompatible
private final boolean onlyCompatible
-
-
Constructor Details
-
EnchantRandomlyFunction
EnchantRandomlyFunction(List<LootItemCondition> pConditons, Optional<HolderSet<Enchantment>> pOptions, boolean pOnlyCompatible)
-
-
Method Details
-
getType
- Specified by:
getTypein interfaceLootItemFunction- Specified by:
getTypein classLootItemConditionalFunction
-
run
Description copied from class:LootItemConditionalFunctionCalled to perform the actual action of this function, after conditions have been checked.- Specified by:
runin classLootItemConditionalFunction
-
enchantItem
private static ItemStack enchantItem(ItemStack pStack, Holder<Enchantment> pEnchantment, RandomSource pRandom) -
randomEnchantment
-
randomApplicableEnchantment
public static EnchantRandomlyFunction.Builder randomApplicableEnchantment(HolderLookup.Provider pRegistries)
-