Class NeoForgeLanguageWrapper

java.lang.Object
net.neoforged.neoforge.common.data.LanguageProvider
net.ixdarklord.coolcatcore.api.datagen.NeoForgeLanguageWrapper
All Implemented Interfaces:
net.minecraft.data.DataProvider

public class NeoForgeLanguageWrapper extends net.neoforged.neoforge.common.data.LanguageProvider
Forge adapter that wraps LanguageProvider.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface net.minecraft.data.DataProvider

    net.minecraft.data.DataProvider.Factory<T>
  • Field Summary

    Fields inherited from interface net.minecraft.data.DataProvider

    FIXED_ORDER_FIELDS, INDENT_WIDTH, KEY_COMPARATOR, LOGGER
  • Constructor Summary

    Constructors
    Constructor
    Description
    NeoForgeLanguageWrapper(net.minecraft.data.PackOutput output, String modid, String locale, net.ixdarklord.coolcatcore.api.datagen.language.LanguageProvider provider)
    Creates a new Forge language wrapper for a specific locale.
    NeoForgeLanguageWrapper(net.minecraft.data.PackOutput output, String modid, net.ixdarklord.coolcatcore.api.datagen.language.LanguageProvider provider)
    Creates a new Forge language wrapper for en_us.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
     
    static net.minecraft.data.DataProvider.Factory<NeoForgeLanguageWrapper>
    factory(String modid, String locale, Supplier<net.ixdarklord.coolcatcore.api.datagen.language.LanguageProvider> supplier)
    Creates a factory for generating language data providers targeting a specific locale.
    static net.minecraft.data.DataProvider.Factory<NeoForgeLanguageWrapper>
    factory(String modid, Supplier<net.ixdarklord.coolcatcore.api.datagen.language.LanguageProvider> supplier)
    Creates a factory for generating language data providers targeting the default locale (en_us).
    @NotNull String
     

    Methods inherited from class net.neoforged.neoforge.common.data.LanguageProvider

    add, add, add, add, add, add, add, addBiome, addBlock, addDimension, addEffect, addEntityType, addItem, addTag, run

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • NeoForgeLanguageWrapper

      public NeoForgeLanguageWrapper(net.minecraft.data.PackOutput output, String modid, net.ixdarklord.coolcatcore.api.datagen.language.LanguageProvider provider)
      Creates a new Forge language wrapper for en_us.
      Parameters:
      output - The data output.
      modid - The mod ID.
      provider - The internal language provider.
    • NeoForgeLanguageWrapper

      public NeoForgeLanguageWrapper(net.minecraft.data.PackOutput output, String modid, String locale, net.ixdarklord.coolcatcore.api.datagen.language.LanguageProvider provider)
      Creates a new Forge language wrapper for a specific locale.
      Parameters:
      output - The data output.
      modid - The mod ID.
      locale - The locale (e.g. "en_us", "es_es").
      provider - The internal language provider.
  • Method Details

    • addTranslations

      protected void addTranslations()
      Specified by:
      addTranslations in class net.neoforged.neoforge.common.data.LanguageProvider
    • getName

      @NotNull public @NotNull String getName()
      Specified by:
      getName in interface net.minecraft.data.DataProvider
      Overrides:
      getName in class net.neoforged.neoforge.common.data.LanguageProvider
    • factory

      public static net.minecraft.data.DataProvider.Factory<NeoForgeLanguageWrapper> factory(String modid, Supplier<net.ixdarklord.coolcatcore.api.datagen.language.LanguageProvider> supplier)
      Creates a factory for generating language data providers targeting the default locale (en_us).

      This method is a convenience for the common case where only English localization data is generated. It can be directly passed to Forge's DataGenerator#addProvider method.

      Example usage:

      generator.addProvider(true,
          ForgeLanguageWrapper.factory("coolcatmod", MyEnglishLanguageProvider::new));
      
      Parameters:
      modid - The mod ID used to locate the generated language file.
      supplier - A supplier that creates the wrapped LanguageProvider.
      Returns:
      A DataProvider.Factory instance producing NeoForgeLanguageWrapper objects for en_us.
    • factory

      public static net.minecraft.data.DataProvider.Factory<NeoForgeLanguageWrapper> factory(String modid, String locale, Supplier<net.ixdarklord.coolcatcore.api.datagen.language.LanguageProvider> supplier)
      Creates a factory for generating language data providers targeting a specific locale.

      This method allows multiple translations to be generated (for example, en_us, es_es, de_de) by providing a distinct LanguageProvider implementation for each locale.

      Example usage:

      generator.addProvider(true,
          ForgeLanguageWrapper.factory("coolcatmod", "es_es", MySpanishLanguageProvider::new));
      
      Parameters:
      modid - The mod ID used to locate the generated language file.
      locale - The locale code (e.g. en_us, es_es, fr_fr).
      supplier - A supplier that creates the wrapped LanguageProvider.
      Returns:
      A DataProvider.Factory instance producing NeoForgeLanguageWrapper objects for the specified locale.