Class NeoForgeLootTableProvider
java.lang.Object
net.minecraft.data.loot.LootTableProvider
net.neoforged.neoforge.common.data.internal.NeoForgeLootTableProvider
- All Implemented Interfaces:
net.minecraft.data.DataProvider
public final class NeoForgeLootTableProvider
extends net.minecraft.data.loot.LootTableProvider
Currently used only for replacing shears item to shears_dig item ability
-
Nested Class Summary
Nested classes/interfaces inherited from class net.minecraft.data.loot.LootTableProvider
net.minecraft.data.loot.LootTableProvider.SubProviderEntry
Nested classes/interfaces inherited from interface net.minecraft.data.DataProvider
net.minecraft.data.DataProvider.Factory<T extends net.minecraft.data.DataProvider>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final List
<Function<net.minecraft.world.level.storage.loot.predicates.LootItemCondition, net.minecraft.world.level.storage.loot.predicates.LootItemCondition.Builder>> Fields inherited from interface net.minecraft.data.DataProvider
FIXED_ORDER_FIELDS, INDENT_WIDTH, KEY_COMPARATOR
-
Constructor Summary
ConstructorsConstructorDescriptionNeoForgeLootTableProvider
(net.minecraft.data.PackOutput packOutput, CompletableFuture<net.minecraft.core.HolderLookup.Provider> provider) -
Method Summary
Modifier and TypeMethodDescriptionprivate boolean
checkMatchTool
(net.minecraft.world.level.storage.loot.predicates.MatchTool lootCondition, net.minecraft.world.item.Item expected) private boolean
findAndReplaceInComposite
(net.minecraft.world.level.storage.loot.predicates.CompositeLootItemCondition alternative, Consumer<net.minecraft.world.level.storage.loot.predicates.LootItemCondition.Builder> poolBuilder) private boolean
findAndReplaceInLootEntry
(net.minecraft.world.level.storage.loot.entries.LootPoolEntryContainer entry, Consumer<net.minecraft.world.level.storage.loot.entries.LootPoolEntryContainer.Builder<?>> newBuilder) private boolean
findAndReplaceInLootPool
(net.minecraft.world.level.storage.loot.LootPool lootPool, net.minecraft.world.level.storage.loot.LootTable.Builder newBuilder) private net.minecraft.world.level.storage.loot.LootTable.Builder
findAndReplaceInLootTableBuilder
(net.minecraft.world.level.storage.loot.LootTable.Builder builder) private boolean
findAndReplaceInParentedLootEntry
(net.minecraft.world.level.storage.loot.entries.CompositeEntryBase entry, Consumer<net.minecraft.world.level.storage.loot.entries.LootPoolEntryContainer.Builder<?>> newBuilder) private <T,
C> T getPrivateValue
(Class<C> clazz, C inst, String name) List
<net.minecraft.data.loot.LootTableProvider.SubProviderEntry> private net.minecraft.data.loot.LootTableSubProvider
replaceAndFilterChangesOnly
(net.minecraft.data.loot.LootTableSubProvider subProvider) private boolean
replaceCondition
(net.minecraft.world.level.storage.loot.predicates.LootItemCondition lootCondition, Consumer<net.minecraft.world.level.storage.loot.predicates.LootItemCondition.Builder> poolBuilder) private void
replaceLootItemCondition
(Function<net.minecraft.world.level.storage.loot.predicates.LootItemCondition, net.minecraft.world.level.storage.loot.predicates.LootItemCondition.Builder> replacer) protected void
validate
(net.minecraft.core.WritableRegistry<net.minecraft.world.level.storage.loot.LootTable> writableregistry, net.minecraft.world.level.storage.loot.ValidationContext validationcontext, net.minecraft.util.ProblemReporter.Collector problemreporter$collector) Methods inherited from class net.minecraft.data.loot.LootTableProvider
getName, run
-
Field Details
-
conditionReplacers
-
-
Constructor Details
-
NeoForgeLootTableProvider
public NeoForgeLootTableProvider(net.minecraft.data.PackOutput packOutput, CompletableFuture<net.minecraft.core.HolderLookup.Provider> provider)
-
-
Method Details
-
validate
protected void validate(net.minecraft.core.WritableRegistry<net.minecraft.world.level.storage.loot.LootTable> writableregistry, net.minecraft.world.level.storage.loot.ValidationContext validationcontext, net.minecraft.util.ProblemReporter.Collector problemreporter$collector) - Overrides:
validate
in classnet.minecraft.data.loot.LootTableProvider
-
getTables
- Overrides:
getTables
in classnet.minecraft.data.loot.LootTableProvider
-
replaceAndFilterChangesOnly
private net.minecraft.data.loot.LootTableSubProvider replaceAndFilterChangesOnly(net.minecraft.data.loot.LootTableSubProvider subProvider) -
replaceLootItemCondition
private void replaceLootItemCondition(Function<net.minecraft.world.level.storage.loot.predicates.LootItemCondition, net.minecraft.world.level.storage.loot.predicates.LootItemCondition.Builder> replacer) -
findAndReplaceInLootTableBuilder
@Nullable private net.minecraft.world.level.storage.loot.LootTable.Builder findAndReplaceInLootTableBuilder(net.minecraft.world.level.storage.loot.LootTable.Builder builder) -
findAndReplaceInLootPool
private boolean findAndReplaceInLootPool(net.minecraft.world.level.storage.loot.LootPool lootPool, net.minecraft.world.level.storage.loot.LootTable.Builder newBuilder) -
findAndReplaceInParentedLootEntry
private boolean findAndReplaceInParentedLootEntry(net.minecraft.world.level.storage.loot.entries.CompositeEntryBase entry, Consumer<net.minecraft.world.level.storage.loot.entries.LootPoolEntryContainer.Builder<?>> newBuilder) -
findAndReplaceInLootEntry
private boolean findAndReplaceInLootEntry(net.minecraft.world.level.storage.loot.entries.LootPoolEntryContainer entry, Consumer<net.minecraft.world.level.storage.loot.entries.LootPoolEntryContainer.Builder<?>> newBuilder) -
findAndReplaceInComposite
private boolean findAndReplaceInComposite(net.minecraft.world.level.storage.loot.predicates.CompositeLootItemCondition alternative, Consumer<net.minecraft.world.level.storage.loot.predicates.LootItemCondition.Builder> poolBuilder) -
checkMatchTool
private boolean checkMatchTool(net.minecraft.world.level.storage.loot.predicates.MatchTool lootCondition, net.minecraft.world.item.Item expected) -
replaceCondition
private boolean replaceCondition(net.minecraft.world.level.storage.loot.predicates.LootItemCondition lootCondition, Consumer<net.minecraft.world.level.storage.loot.predicates.LootItemCondition.Builder> poolBuilder) -
getPrivateValue
-