Class RegistrateConditionalBlockLootTableSubProvider

java.lang.Object
net.minecraft.data.loot.BlockLootSubProvider
net.minecraft.data.loot.packs.VanillaBlockLoot
com.tterrag.registrate.providers.loot.RegistrateBlockLootTables
com.petrolpark.core.registrate.RegistrateConditionalBlockLootTableSubProvider
All Implemented Interfaces:
ConditionalLootTableSubProvider, RegistrateConditionalLootTableSubProvider, com.tterrag.registrate.providers.loot.RegistrateLootTables, net.minecraft.data.loot.LootTableSubProvider

public class RegistrateConditionalBlockLootTableSubProvider extends com.tterrag.registrate.providers.loot.RegistrateBlockLootTables implements RegistrateConditionalLootTableSubProvider
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected final Map<net.minecraft.resources.ResourceLocation,com.mojang.datafixers.util.Pair<net.minecraft.world.level.storage.loot.LootTable.Builder,List<net.neoforged.neoforge.common.conditions.ICondition>>>
     
    protected List<net.neoforged.neoforge.common.conditions.ICondition>
     
    protected final List<net.minecraft.world.level.block.Block>
     

    Fields inherited from class net.minecraft.data.loot.BlockLootSubProvider

    enabledFeatures, explosionResistant, HAS_SHEARS, map, NORMAL_LEAVES_SAPLING_CHANCES, registries
  • Constructor Summary

    Constructors
    Constructor
    Description
    RegistrateConditionalBlockLootTableSubProvider(net.minecraft.core.HolderLookup.Provider registries, com.tterrag.registrate.AbstractRegistrate<?> parent, Consumer<RegistrateConditionalBlockLootTableSubProvider> callback)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    add(net.minecraft.world.level.block.Block block, net.minecraft.world.level.storage.loot.LootTable.Builder lootTableBuilder)
     
    void
    add(net.minecraft.world.level.block.Block block, net.minecraft.world.level.storage.loot.LootTable.Builder lootTableBuilder, List<net.neoforged.neoforge.common.conditions.ICondition> conditions)
     
    protected void
     
    void
    generate(org.apache.commons.lang3.function.TriConsumer<net.minecraft.resources.ResourceLocation,net.minecraft.world.level.storage.loot.LootTable.Builder,List<net.neoforged.neoforge.common.conditions.ICondition>> output)
     
    protected Iterable<net.minecraft.world.level.block.Block>
     
    withConditions(List<net.neoforged.neoforge.common.conditions.ICondition> conditions)
    Applies the given IConditions to the next Block added.

    Methods inherited from class com.tterrag.registrate.providers.loot.RegistrateBlockLootTables

    addNetherVinesDropTable, applyExplosionCondition, applyExplosionDecay, createBannerDrop, createBeeHiveDrop, createBeeNestDrop, createCandleCakeDrops, createCandleDrops, createCaveVinesDrop, createCopperOreDrops, createCropDrops, createDoorTable, createDoublePlantShearsDrop, createDoublePlantWithSeedDrops, createGrassDrops, createLapisOreDrops, createLeavesDrops, createMangroveLeavesDrops, createMultifaceBlockDrops, createMushroomBlockDrop, createNameableBlockEntityTable, createOakLeavesDrops, createOreDrop, createPetalsDrops, createPotFlowerItemTable, createRedstoneOreDrops, createShearsDispatchTable, createShearsOnlyDrop, createShulkerBoxDrop, createSilkTouchDispatchTable, createSilkTouchOnlyTable, createSilkTouchOrShearsDispatchTable, createSingleItemTable, createSingleItemTableWithSilkTouch, createSingleItemTableWithSilkTouch, createSlabItemTable, dropOther, dropPottedContents, dropSelf, dropWhenSilkTouch, getRegistries, otherWhenSilkTouch

    Methods inherited from class net.minecraft.data.loot.BlockLootSubProvider

    add, createAttachedStemDrops, createSelfDropDispatchTable, createSingleItemTable, createSinglePropConditionTable, createStemDrops, doesNotHaveSilkTouch, generate, hasSilkTouch, noDrop

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.petrolpark.core.registrate.RegistrateConditionalLootTableSubProvider

    generate

    Methods inherited from interface com.tterrag.registrate.providers.loot.RegistrateLootTables

    validate
  • Field Details

    • conditionalTables

      protected final Map<net.minecraft.resources.ResourceLocation,com.mojang.datafixers.util.Pair<net.minecraft.world.level.storage.loot.LootTable.Builder,List<net.neoforged.neoforge.common.conditions.ICondition>>> conditionalTables
    • unconditionalBlocks

      protected final List<net.minecraft.world.level.block.Block> unconditionalBlocks
    • nextConditions

      protected List<net.neoforged.neoforge.common.conditions.ICondition> nextConditions
  • Constructor Details

    • RegistrateConditionalBlockLootTableSubProvider

      public RegistrateConditionalBlockLootTableSubProvider(net.minecraft.core.HolderLookup.Provider registries, com.tterrag.registrate.AbstractRegistrate<?> parent, Consumer<RegistrateConditionalBlockLootTableSubProvider> callback)
  • Method Details

    • generate

      public void generate(org.apache.commons.lang3.function.TriConsumer<net.minecraft.resources.ResourceLocation,net.minecraft.world.level.storage.loot.LootTable.Builder,List<net.neoforged.neoforge.common.conditions.ICondition>> output)
      Specified by:
      generate in interface ConditionalLootTableSubProvider
      Specified by:
      generate in interface RegistrateConditionalLootTableSubProvider
    • generate

      protected void generate()
      Overrides:
      generate in class com.tterrag.registrate.providers.loot.RegistrateBlockLootTables
    • getKnownBlocks

      protected Iterable<net.minecraft.world.level.block.Block> getKnownBlocks()
      Overrides:
      getKnownBlocks in class com.tterrag.registrate.providers.loot.RegistrateBlockLootTables
    • add

      public void add(@Nonnull net.minecraft.world.level.block.Block block, @Nonnull net.minecraft.world.level.storage.loot.LootTable.Builder lootTableBuilder, List<net.neoforged.neoforge.common.conditions.ICondition> conditions)
    • withConditions

      public RegistrateConditionalBlockLootTableSubProvider withConditions(List<net.neoforged.neoforge.common.conditions.ICondition> conditions)
      Applies the given IConditions to the next Block added. If no further Block is added, an error will be thrown.
      Parameters:
      conditions -
    • add

      public void add(@Nonnull net.minecraft.world.level.block.Block block, @Nonnull net.minecraft.world.level.storage.loot.LootTable.Builder lootTableBuilder)
      Overrides:
      add in class com.tterrag.registrate.providers.loot.RegistrateBlockLootTables