diff --git a/src/generated/resources/.cache/9047e4e94996e73e9dfde3738763637fb609e07e b/src/generated/resources/.cache/9047e4e94996e73e9dfde3738763637fb609e07e new file mode 100644 index 00000000..d6026aea --- /dev/null +++ b/src/generated/resources/.cache/9047e4e94996e73e9dfde3738763637fb609e07e @@ -0,0 +1,2 @@ +// 1.19.2 2023-09-01T14:12:50.8740378 Create: The Factory Must Grow's lang merger +b7a4bcf3d2f21f8f7dd323ed56598d109b7fb064 assets/tfmg/lang/en_us.json diff --git a/src/generated/resources/assets/tfmg/lang/en_us.json b/src/generated/resources/assets/tfmg/lang/en_us.json index a062c1b5..64e2e83a 100644 --- a/src/generated/resources/assets/tfmg/lang/en_us.json +++ b/src/generated/resources/assets/tfmg/lang/en_us.json @@ -1,61 +1,76 @@ { - "block.tfmg.cast_iron_block": "Block of Cast Iron", - "block.tfmg.concrete": "Concrete", - "block.tfmg.cooling_fluid": "Cooling Fluid", - "block.tfmg.creosote": "Creosote", - "block.tfmg.crude_oil_fluid": "Crude Oil Fluid", - "block.tfmg.diesel": "Diesel", - "block.tfmg.formwork_block": "Formwork Block", - "block.tfmg.gasoline": "Gasoline", - "block.tfmg.heavy_machinery_casing": "Heavy Machinery Casing", - "block.tfmg.heavy_oil": "Heavy Oil", - "block.tfmg.kerosene": "Kerosene", - "block.tfmg.liquid_concrete": "Liquid Concrete", - "block.tfmg.liquid_plastic": "Liquid Plastic", - "block.tfmg.lubrication_oil": "Lubrication Oil", - "block.tfmg.napalm": "Napalm", - "block.tfmg.napalm_bomb": "Napalm Bomb", - "block.tfmg.naphtha": "Naphtha", - "block.tfmg.steel_block": "Block of Steel", - "block.tfmg.steel_casing": "Steel Casing", - "entity.tfmg.blue_spark": "Blue Spark", - "entity.tfmg.copper_grenade": "Copper Grenade", - "entity.tfmg.green_spark": "Green Spark", - "entity.tfmg.napalm_bomb_entity": "Napalm Bomb Entity", - "entity.tfmg.spark": "Spark", - "entity.tfmg.thermite_grenade": "Thermite Grenade", - "entity.tfmg.zin_grenade": "Zin Grenade", - "fluid.tfmg.butane": "Butane", - "fluid.tfmg.carbon_dioxide": "Carbon Dioxide", - "fluid.tfmg.cooling_fluid": "Cooling Fluid", - "fluid.tfmg.creosote": "Creosote", - "fluid.tfmg.crude_oil_fluid": "Crude Oil", - "fluid.tfmg.diesel": "Diesel", - "fluid.tfmg.ethylene": "Ethylene", - "fluid.tfmg.gasoline": "Gasoline", - "fluid.tfmg.heavy_oil": "Heavy Oil", - "fluid.tfmg.kerosene": "Kerosene", - "fluid.tfmg.liquid_concrete": "Liquid Concrete", - "fluid.tfmg.liquid_plastic": "Liquid Plastic", - "fluid.tfmg.lpg": "LPG", - "fluid.tfmg.lubrication_oil": "Lubrication Oil", - "fluid.tfmg.napalm": "Napalm", - "fluid.tfmg.naphtha": "Naphtha", - "fluid.tfmg.propane": "Propane", - "fluid.tfmg.propylene": "Propylene", - "item.tfmg.cooling_fluid_bucket": "Cooling Fluid Bucket", - "item.tfmg.copper_grenade": "Copper Grenade", - "item.tfmg.creosote_bucket": "Creosote Bucket", - "item.tfmg.crude_oil_fluid_bucket": "Crude Oil Fluid Bucket", - "item.tfmg.diesel_bucket": "Diesel Bucket", - "item.tfmg.gasoline_bucket": "Gasoline Bucket", - "item.tfmg.heavy_oil_bucket": "Heavy Oil Bucket", - "item.tfmg.kerosene_bucket": "Kerosene Bucket", - "item.tfmg.liquid_concrete_bucket": "Liquid Concrete Bucket", - "item.tfmg.liquid_plastic_bucket": "Liquid Plastic Bucket", - "item.tfmg.lubrication_oil_bucket": "Lubrication Oil Bucket", - "item.tfmg.napalm_bucket": "Napalm Bucket", - "item.tfmg.naphtha_bucket": "Naphtha Bucket", - "item.tfmg.thermite_grenade": "Thermite Grenade", - "item.tfmg.zinc_grenade": "Zinc Grenade" + + "_": "->------------------------] Game Elements [------------------------<-", + + "block.tfmg.cast_iron_block": "Block of Cast Iron", + "block.tfmg.concrete": "Concrete", + "block.tfmg.cooling_fluid": "Cooling Fluid", + "block.tfmg.creosote": "Creosote", + "block.tfmg.crude_oil_fluid": "Crude Oil Fluid", + "block.tfmg.diesel": "Diesel", + "block.tfmg.formwork_block": "Formwork Block", + "block.tfmg.gasoline": "Gasoline", + "block.tfmg.heavy_machinery_casing": "Heavy Machinery Casing", + "block.tfmg.heavy_oil": "Heavy Oil", + "block.tfmg.kerosene": "Kerosene", + "block.tfmg.liquid_concrete": "Liquid Concrete", + "block.tfmg.liquid_plastic": "Liquid Plastic", + "block.tfmg.lubrication_oil": "Lubrication Oil", + "block.tfmg.napalm": "Napalm", + "block.tfmg.napalm_bomb": "Napalm Bomb", + "block.tfmg.naphtha": "Naphtha", + "block.tfmg.steel_block": "Block of Steel", + "block.tfmg.steel_casing": "Steel Casing", + + "entity.tfmg.blue_spark": "Blue Spark", + "entity.tfmg.copper_grenade": "Copper Grenade", + "entity.tfmg.green_spark": "Green Spark", + "entity.tfmg.napalm_bomb_entity": "Napalm Bomb Entity", + "entity.tfmg.spark": "Spark", + "entity.tfmg.thermite_grenade": "Thermite Grenade", + "entity.tfmg.zin_grenade": "Zin Grenade", + + "fluid.tfmg.butane": "Butane", + "fluid.tfmg.carbon_dioxide": "Carbon Dioxide", + "fluid.tfmg.cooling_fluid": "Cooling Fluid", + "fluid.tfmg.creosote": "Creosote", + "fluid.tfmg.crude_oil_fluid": "Crude Oil", + "fluid.tfmg.diesel": "Diesel", + "fluid.tfmg.ethylene": "Ethylene", + "fluid.tfmg.gasoline": "Gasoline", + "fluid.tfmg.heavy_oil": "Heavy Oil", + "fluid.tfmg.kerosene": "Kerosene", + "fluid.tfmg.liquid_concrete": "Liquid Concrete", + "fluid.tfmg.liquid_plastic": "Liquid Plastic", + "fluid.tfmg.lpg": "LPG", + "fluid.tfmg.lubrication_oil": "Lubrication Oil", + "fluid.tfmg.napalm": "Napalm", + "fluid.tfmg.naphtha": "Naphtha", + "fluid.tfmg.propane": "Propane", + "fluid.tfmg.propylene": "Propylene", + + "item.tfmg.cooling_fluid_bucket": "Cooling Fluid Bucket", + "item.tfmg.copper_grenade": "Copper Grenade", + "item.tfmg.creosote_bucket": "Creosote Bucket", + "item.tfmg.crude_oil_fluid_bucket": "Crude Oil Fluid Bucket", + "item.tfmg.diesel_bucket": "Diesel Bucket", + "item.tfmg.gasoline_bucket": "Gasoline Bucket", + "item.tfmg.heavy_oil_bucket": "Heavy Oil Bucket", + "item.tfmg.kerosene_bucket": "Kerosene Bucket", + "item.tfmg.liquid_concrete_bucket": "Liquid Concrete Bucket", + "item.tfmg.liquid_plastic_bucket": "Liquid Plastic Bucket", + "item.tfmg.lubrication_oil_bucket": "Lubrication Oil Bucket", + "item.tfmg.napalm_bucket": "Napalm Bucket", + "item.tfmg.naphtha_bucket": "Naphtha Bucket", + "item.tfmg.thermite_grenade": "Thermite Grenade", + "item.tfmg.zinc_grenade": "Zinc Grenade", + + + "_": "->------------------------] UI & Messages [------------------------<-", + + "itemGroup.tfmg.base": "Create: The Factory Must Grow", + "itemGroup.tfmg.concrete": "Create: TFMG's Concrete", + + "_": "Thank you for translating Create: The Factory Must Grow!" + } \ No newline at end of file diff --git a/src/main/java/com/drmangotea/tfmg/CreateTFMG.java b/src/main/java/com/drmangotea/tfmg/CreateTFMG.java index 4b6f3ed2..135763fc 100644 --- a/src/main/java/com/drmangotea/tfmg/CreateTFMG.java +++ b/src/main/java/com/drmangotea/tfmg/CreateTFMG.java @@ -1,14 +1,30 @@ package com.drmangotea.tfmg; +import com.drmangotea.tfmg.base.TFMGLangPartials; import com.drmangotea.tfmg.content.gadgets.explosives.thermite_grenades.fire.TFMGColoredFires; import com.drmangotea.tfmg.registry.*; import com.mojang.logging.LogUtils; +import com.simibubi.create.AllSoundEvents; +import com.simibubi.create.Create; +import com.simibubi.create.foundation.advancement.AllAdvancements; +import com.simibubi.create.foundation.data.AllLangPartials; import com.simibubi.create.foundation.data.CreateRegistrate; +import com.simibubi.create.foundation.data.LangMerger; +import com.simibubi.create.foundation.data.TagGen; +import com.simibubi.create.foundation.data.recipe.MechanicalCraftingRecipeGen; +import com.simibubi.create.foundation.data.recipe.ProcessingRecipeGen; +import com.simibubi.create.foundation.data.recipe.SequencedAssemblyRecipeGen; +import com.simibubi.create.foundation.data.recipe.StandardRecipeGen; +import com.simibubi.create.foundation.ponder.PonderLocalization; +import com.tterrag.registrate.providers.ProviderType; import net.minecraft.client.renderer.ItemBlockRenderTypes; import net.minecraft.client.renderer.RenderType; +import net.minecraft.data.DataGenerator; import net.minecraft.resources.ResourceLocation; import net.minecraftforge.api.distmarker.Dist; import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.data.event.GatherDataEvent; +import net.minecraftforge.eventbus.api.EventPriority; import net.minecraftforge.eventbus.api.IEventBus; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.DistExecutor; @@ -24,6 +40,7 @@ public class CreateTFMG { public static final String MOD_ID = "tfmg"; + public static final String NAME = "Create: The Factory Must Grow"; public static final CreateRegistrate REGISTRATE = CreateRegistrate.create(MOD_ID); public static final Logger LOGGER = LogUtils.getLogger(); @@ -40,13 +57,17 @@ public class CreateTFMG TFMGEntityTypes.register(); TFMGCreativeModeTabs.init(); TFMGFluids.register(); - - DistExecutor.safeRunWhenOn(Dist.CLIENT, () -> CreateTFMGClient::new); TFMGColoredFires.register(modEventBus); - modEventBus.addListener(this::clientSetup); // + modEventBus.addListener(EventPriority.LOWEST, CreateTFMG::gatherData); + DistExecutor.safeRunWhenOn(Dist.CLIENT, () -> CreateTFMGClient::new); + modEventBus.addListener(this::clientSetup); MinecraftForge.EVENT_BUS.register(this); } + public static void gatherData(GatherDataEvent event) { + DataGenerator gen = event.getGenerator(); + gen.addProvider(true, new LangMerger(gen, MOD_ID, NAME, TFMGLangPartials.values())); + } private void clientSetup(final FMLClientSetupEvent event) { ItemBlockRenderTypes.setRenderLayer(TFMGColoredFires.GREEN_FIRE.get(), RenderType.cutout()); ItemBlockRenderTypes.setRenderLayer(TFMGColoredFires.BLUE_FIRE.get(), RenderType.cutout()); diff --git a/src/main/java/com/drmangotea/tfmg/base/TFMGLangPartials.java b/src/main/java/com/drmangotea/tfmg/base/TFMGLangPartials.java new file mode 100644 index 00000000..451eff8c --- /dev/null +++ b/src/main/java/com/drmangotea/tfmg/base/TFMGLangPartials.java @@ -0,0 +1,43 @@ +package com.drmangotea.tfmg.base; + +import com.drmangotea.tfmg.CreateTFMG; +import com.google.common.base.Supplier; +import com.google.gson.JsonElement; +import com.simibubi.create.AllSoundEvents; +import com.simibubi.create.Create; +import com.simibubi.create.foundation.advancement.AllAdvancements; +import com.simibubi.create.foundation.data.LangPartial; +import com.simibubi.create.foundation.ponder.PonderLocalization; +import com.simibubi.create.foundation.utility.FilesHelper; +import com.simibubi.create.foundation.utility.Lang; + +public enum TFMGLangPartials implements LangPartial { + INTERFACE("UI & Messages"); + + ; + + private final String display; + private final Supplier provider; + + private TFMGLangPartials(String display) { + this.display = display; + this.provider = this::fromResource; + } + + + public String getDisplayName() { + return display; + } + + public JsonElement provide() { + return provider.get(); + } + + private JsonElement fromResource() { + String fileName = Lang.asId(name()); + String filepath = "assets/" + CreateTFMG.MOD_ID + "/lang/default/" + fileName + ".json"; + JsonElement element = FilesHelper.loadJsonResource(filepath); + return element; + } + +} \ No newline at end of file