Class FabricTagProvider<T>

java.lang.Object
net.minecraft.data.server.AbstractTagProvider<T>
net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider<T>
All Implemented Interfaces:
net.minecraft.data.DataProvider
Direct Known Subclasses:
FabricTagProvider.BlockTagProvider, FabricTagProvider.DynamicRegistryTagProvider, FabricTagProvider.EntityTypeTagProvider, FabricTagProvider.FluidTagProvider, FabricTagProvider.GameEventTagProvider, FabricTagProvider.ItemTagProvider

public abstract class FabricTagProvider<T> extends net.minecraft.data.server.AbstractTagProvider<T>
Implement this class (or one of the inner classes) to generate a tag list.

Register your implementation using FabricDataGenerator.addProvider(java.util.function.Function<net.fabricmc.fabric.api.datagen.v1.FabricDataGenerator, P>) in a DataGeneratorEntrypoint

Commonly used implementations of this class are provided:

See Also:
  • Constructor Details

    • FabricTagProvider

      protected FabricTagProvider(FabricDataGenerator dataGenerator, net.minecraft.util.registry.Registry<T> registry, String path, String name)
      Construct a new FabricTagProvider.

      Common implementations of this class are provided. For example @see BlockTagProvider

      Parameters:
      dataGenerator - The data generator instance
      registry - The backing registry for the Tag type.
      path - The directory name to write the tag file names. Example: "blocks" or "items"
      name - The name used for DataProvider.getName()
  • Method Details

    • generateTags

      protected abstract void generateTags()
      Implement this method and then use getOrCreateTagBuilder(net.minecraft.tag.TagKey<T>) to get and register new tag builders.
    • getOrCreateTagBuilder

      protected FabricTagProvider<T>.FabricTagBuilder<T> getOrCreateTagBuilder(net.minecraft.tag.TagKey<T> tag)
      Creates a new instance of FabricTagProvider.FabricTagBuilder for the given net.minecraft.tag.Tag.Identified tag.
      Overrides:
      getOrCreateTagBuilder in class net.minecraft.data.server.AbstractTagProvider<T>
      Parameters:
      tag - The net.minecraft.tag.Tag.Identified tag to create the builder for
      Returns:
      The FabricTagProvider.FabricTagBuilder instance
    • getOutput

      protected Path getOutput(net.minecraft.util.Identifier id)
      Specified by:
      getOutput in class net.minecraft.data.server.AbstractTagProvider<T>
    • configure

      protected final void configure()
      Specified by:
      configure in class net.minecraft.data.server.AbstractTagProvider<T>
    • getName

      public String getName()