5353import mekanism .common .resource .ResourceType ;
5454import mekanism .common .resource .ore .OreBlockType ;
5555import mekanism .common .resource .ore .OreType ;
56+ import mekanism .common .tags .MekanismTags ;
5657import mekanism .common .tier .FactoryTier ;
5758import mekanism .common .util .EnumUtils ;
5859import net .minecraft .data .PackOutput ;
5960import net .minecraft .resources .ResourceKey ;
6061import net .minecraft .resources .ResourceLocation ;
62+ import net .minecraft .tags .TagKey ;
6163import net .minecraft .world .item .Item ;
6264
6365public class MekanismLangProvider extends BaseLanguageProvider {
@@ -68,6 +70,7 @@ public MekanismLangProvider(PackOutput output) {
6870
6971 @ Override
7072 protected void addTranslations () {
73+ addTags ();
7174 addItems ();
7275 addBlocks ();
7376 addFluids ();
@@ -83,6 +86,137 @@ protected void addTranslations() {
8386 addAdvancements ();
8487 }
8588
89+ private void addTags () {
90+ addTag (MekanismTags .Items .CONFIGURATORS , "Configurators" );
91+ addTag (MekanismTags .Items .TOOLS_WRENCHES , "Wrenches" );
92+ addTag (MekanismTags .Items .PERSONAL_STORAGE , "Personal Storage" );
93+
94+ addTag (MekanismTags .Items .RODS_PLASTIC , "Plastic Rods" );
95+
96+ addTag (MekanismTags .Items .FUELS , "Fuels" );
97+ addTag (MekanismTags .Items .FUELS_BIO , "Bio Fuels" );
98+ addTag (MekanismTags .Items .FUELS_BLOCK_BIO , "Bio Storage Block Fuels" );
99+
100+ addTag (MekanismTags .Items .PELLETS_ANTIMATTER , "Antimatter Pellets" );
101+ addTag (MekanismTags .Items .PELLETS_PLUTONIUM , "Plutonium Pellets" );
102+ addTag (MekanismTags .Items .PELLETS_POLONIUM , "Polonium Pellets" );
103+
104+ addTag (MekanismTags .Items .DUSTS_BRONZE , "Bronze Dusts" );
105+ addTag (MekanismTags .Items .DUSTS_CHARCOAL , "Charcoal Dusts" );
106+ addTag (MekanismTags .Items .DUSTS_COAL , "Coal Dusts" );
107+ addTag (MekanismTags .Items .DUSTS_DIAMOND , "Diamond Dusts" );
108+ addTag (MekanismTags .Items .DUSTS_EMERALD , "Emerald Dusts" );
109+ addTag (MekanismTags .Items .DUSTS_NETHERITE , "Netherite Dusts" );
110+ addTag (MekanismTags .Items .DUSTS_LAPIS , "Lapis Dusts" );
111+ addTag (MekanismTags .Items .DUSTS_LITHIUM , "Lithium Dusts" );
112+ addTag (MekanismTags .Items .DUSTS_OBSIDIAN , "Obsidian Dusts" );
113+ addTag (MekanismTags .Items .DUSTS_QUARTZ , "Quartz Dusts" );
114+ addTag (MekanismTags .Items .DUSTS_REFINED_OBSIDIAN , "Refined Obsidian Dusts" );
115+ addTag (MekanismTags .Items .DUSTS_SALT , "Salts" );
116+ addTag (MekanismTags .Items .DUSTS_STEEL , "Steel Dusts" );
117+ addTag (MekanismTags .Items .DUSTS_SULFUR , "Sulphur Dusts" );
118+ addTag (MekanismTags .Items .DUSTS_WOOD , "Sawdusts" );
119+ addTag (MekanismTags .Items .DUSTS_FLUORITE , "Fluorite Dusts" );
120+
121+ addTag (MekanismTags .Items .NUGGETS_BRONZE , "Bronze Nuggets" );
122+ addTag (MekanismTags .Items .NUGGETS_REFINED_GLOWSTONE , "Refined Glowstone Nuggets" );
123+ addTag (MekanismTags .Items .NUGGETS_REFINED_OBSIDIAN , "Refined Obsidian Nuggets" );
124+ addTag (MekanismTags .Items .NUGGETS_STEEL , "Steel Nuggets" );
125+
126+ addTag (MekanismTags .Items .INGOTS_BRONZE , "Bronze Ingots" );
127+ addTag (MekanismTags .Items .INGOTS_REFINED_GLOWSTONE , "Refined Glowstone Ingots" );
128+ addTag (MekanismTags .Items .INGOTS_REFINED_OBSIDIAN , "Refined Obsidian Ingots" );
129+ addTag (MekanismTags .Items .INGOTS_STEEL , "Steel Ingots" );
130+
131+ addTag (MekanismTags .Items .STORAGE_BLOCKS_BRONZE , "Bronze Storage Blocks" );
132+ addTag (MekanismTags .Items .STORAGE_BLOCKS_CHARCOAL , "Charcoal Storage Blocks" );
133+ addTag (MekanismTags .Items .STORAGE_BLOCKS_REFINED_GLOWSTONE , "Refined Glowstone Storage Blocks" );
134+ addTag (MekanismTags .Items .STORAGE_BLOCKS_REFINED_OBSIDIAN , "Refined Obsidian Storage Blocks" );
135+ addTag (MekanismTags .Items .STORAGE_BLOCKS_STEEL , "Steel Storage Blocks" );
136+ addTag (MekanismTags .Items .STORAGE_BLOCKS_FLUORITE , "Fluorite Storage Blocks" );
137+
138+ addTag (MekanismTags .Items .CIRCUITS , "Circuits" );
139+ addTag (MekanismTags .Items .CIRCUITS_BASIC , "Basic Circuits" );
140+ addTag (MekanismTags .Items .CIRCUITS_ADVANCED , "Advanced Circuits" );
141+ addTag (MekanismTags .Items .CIRCUITS_ELITE , "Elite Circuits" );
142+ addTag (MekanismTags .Items .CIRCUITS_ULTIMATE , "Ultimate Circuits" );
143+
144+ addTag (MekanismTags .Items .ALLOYS , "Alloys" );
145+ addTag (MekanismTags .Items .ALLOYS_BASIC , "Basic Alloys" );
146+ addTag (MekanismTags .Items .ALLOYS_INFUSED , "Infused Alloys" );
147+ addTag (MekanismTags .Items .ALLOYS_REINFORCED , "Reinforced Alloys" );
148+ addTag (MekanismTags .Items .ALLOYS_ATOMIC , "Atomic Alloys" );
149+
150+ addTag (MekanismTags .Items .COMMON_ALLOYS , "Alloys" );
151+ addTag (MekanismTags .Items .ALLOYS_ADVANCED , "Advanced Alloys" );
152+ addTag (MekanismTags .Items .ALLOYS_ELITE , "Elite Alloys" );
153+ addTag (MekanismTags .Items .ALLOYS_ULTIMATE , "Ultimate Alloys" );
154+
155+ addTag (MekanismTags .Items .ENRICHED , "Enriched" );
156+ addTag (MekanismTags .Items .ENRICHED_CARBON , "Enriched Carbon" );
157+ addTag (MekanismTags .Items .ENRICHED_DIAMOND , "Enriched Diamond" );
158+ addTag (MekanismTags .Items .ENRICHED_OBSIDIAN , "Enriched Obsidian" );
159+ addTag (MekanismTags .Items .ENRICHED_REDSTONE , "Enriched Redstone" );
160+ addTag (MekanismTags .Items .ENRICHED_GOLD , "Enriched Gold" );
161+ addTag (MekanismTags .Items .ENRICHED_TIN , "Enriched Tin" );
162+
163+ addTag (MekanismTags .Items .DIRTY_DUSTS , "Dirty Dusts" );
164+ addTag (MekanismTags .Items .CLUMPS , "Clumps" );
165+ addTag (MekanismTags .Items .SHARDS , "Shards" );
166+ addTag (MekanismTags .Items .CRYSTALS , "Crystals" );
167+
168+ addTag (MekanismTags .Items .GEMS_FLUORITE , "Fluorite" );
169+
170+ addTag (MekanismTags .Items .MEKASUIT_HUD_RENDERER , "Render's MekaSuit HUD" );
171+ addTag (MekanismTags .Items .STONE_CRAFTING_MATERIALS , "Stone Crafting Materials" );
172+ addTag (MekanismTags .Items .MUFFLING_CENTER , "Muffling Upgrade Center" );
173+
174+ addTag (MekanismTags .Items .COLORABLE_WOOL , "Colorable Wool" );
175+ addTag (MekanismTags .Items .COLORABLE_CARPETS , "Colorable Carpets" );
176+ addTag (MekanismTags .Items .COLORABLE_BEDS , "Colorable Beds" );
177+ addTag (MekanismTags .Items .COLORABLE_GLASS , "Colorable Glass" );
178+ addTag (MekanismTags .Items .COLORABLE_GLASS_PANES , "Colorable Glass Panes" );
179+ addTag (MekanismTags .Items .COLORABLE_TERRACOTTA , "Colorable Terracotta" );
180+ addTag (MekanismTags .Items .COLORABLE_CANDLE , "Colorable Candles" );
181+ addTag (MekanismTags .Items .COLORABLE_CONCRETE , "Colorable Concrete" );
182+ addTag (MekanismTags .Items .COLORABLE_CONCRETE_POWDER , "Colorable Concrete Powders" );
183+ addTag (MekanismTags .Items .COLORABLE_BANNERS , "Colorable Banners" );
184+
185+ addTag (MekanismTags .Fluids .BRINE , "Brine" );
186+ addTag (MekanismTags .Fluids .CHLORINE , "Chlorine" );
187+ addTag (MekanismTags .Fluids .ETHENE , "Ethylene" );
188+ addTag (MekanismTags .Fluids .HEAVY_WATER , "Heavy Water" );
189+ addTag (MekanismTags .Fluids .HYDROGEN , "Hydrogen" );
190+ addTag (MekanismTags .Fluids .HYDROGEN_CHLORIDE , "Hydrogen Chloride" );
191+ addTag (MekanismTags .Fluids .URANIUM_OXIDE , "Uranium Oxide" );
192+ addTag (MekanismTags .Fluids .URANIUM_HEXAFLUORIDE , "Uranium Hexafluoride" );
193+ addTag (MekanismTags .Fluids .LITHIUM , "Lithium" );
194+ addTag (MekanismTags .Fluids .OXYGEN , "Oxygen" );
195+ addTag (MekanismTags .Fluids .SODIUM , "Sodium" );
196+ addTag (MekanismTags .Fluids .SUPERHEATED_SODIUM , "Superheated Sodium" );
197+ addTag (MekanismTags .Fluids .STEAM , "Steam" );
198+ addTag (MekanismTags .Fluids .SULFUR_DIOXIDE , "Sulfur Dioxide" );
199+ addTag (MekanismTags .Fluids .SULFUR_TRIOXIDE , "Sulfur Trioxide" );
200+ addTag (MekanismTags .Fluids .SULFURIC_ACID , "Sulfuric Acid" );
201+ addTag (MekanismTags .Fluids .HYDROFLUORIC_ACID , "Hydrofluoric Acid" );
202+ addTag (MekanismTags .Fluids .NUTRITIONAL_PASTE , "Nutritional Paste" );
203+
204+ addTag (MekanismTags .Gases .WATER_VAPOR , "Water Vapor" );
205+ addTag (MekanismTags .Gases .WASTE_BARREL_DECAY_BLACKLIST , "Waste Barrel Does Not Decay" );
206+
207+ addTag (MekanismTags .InfuseTypes .CARBON , "Carbon" );
208+ addTag (MekanismTags .InfuseTypes .REDSTONE , "Redstone" );
209+ addTag (MekanismTags .InfuseTypes .DIAMOND , "Diamond" );
210+ addTag (MekanismTags .InfuseTypes .REFINED_OBSIDIAN , "Refined Obsidian " );
211+ addTag (MekanismTags .InfuseTypes .BIO , "Bio" );
212+ addTag (MekanismTags .InfuseTypes .FUNGI , "Fungi" );
213+ addTag (MekanismTags .InfuseTypes .GOLD , "Gold" );
214+ addTag (MekanismTags .InfuseTypes .TIN , "Tin" );
215+
216+ addTag (MekanismTags .Slurries .DIRTY , "Dirty Slurry" );
217+ addTag (MekanismTags .Slurries .CLEAN , "Clean Slurry" );
218+ }
219+
86220 private void addItems () {
87221 add (MekanismItems .ROBIT , "Robit" );
88222 add (MekanismItems .ENERGY_TABLET , "Energy Tablet" );
@@ -195,17 +329,42 @@ private void addItems() {
195329
196330 for (Cell <ResourceType , PrimaryResource , ItemRegistryObject <Item >> item : MekanismItems .PROCESSED_RESOURCES .cellSet ()) {
197331 String resourceName = formatAndCapitalize (item .getColumnKey ().getRegistrySuffix ());
198- add (item .getValue (), switch (item .getRowKey ()) {
199- case SHARD -> resourceName + " Shard" ;
200- case CRYSTAL -> resourceName + " Crystal" ;
201- case DUST -> resourceName + " Dust" ;
202- case DIRTY_DUST -> "Dirty " + resourceName + " Dust" ;
203- case CLUMP -> resourceName + " Clump" ;
204- case INGOT -> resourceName + " Ingot" ;
205- case RAW -> "Raw " + resourceName ;
206- case NUGGET -> resourceName + " Nugget" ;
332+ TagKey <Item > tag = MekanismTags .Items .PROCESSED_RESOURCES .get (item .getRowKey (), item .getColumnKey ());
333+ switch (item .getRowKey ()) {
334+ case SHARD -> {
335+ add (item .getValue (), resourceName + " Shard" );
336+ addTag (tag , resourceName + " Shards" );
337+ }
338+ case CRYSTAL -> {
339+ add (item .getValue (), resourceName + " Crystal" );
340+ addTag (tag , resourceName + " Crystals" );
341+ }
342+ case DUST -> {
343+ add (item .getValue (), resourceName + " Dust" );
344+ addTag (tag , resourceName + " Dusts" );
345+ }
346+ case DIRTY_DUST -> {
347+ add (item .getValue (), "Dirty " + resourceName + " Dust" );
348+ addTag (tag , "Dirty " + resourceName + " Dusts" );
349+ }
350+ case CLUMP -> {
351+ add (item .getValue (), resourceName + " Clump" );
352+ addTag (tag , resourceName + " Clumps" );
353+ }
354+ case INGOT -> {
355+ add (item .getValue (), resourceName + " Ingot" );
356+ addTag (tag , resourceName + " Ingots" );
357+ }
358+ case RAW -> {
359+ add (item .getValue (), "Raw " + resourceName );
360+ addTag (tag , "Raw " + resourceName );
361+ }
362+ case NUGGET -> {
363+ add (item .getValue (), resourceName + " Nugget" );
364+ addTag (tag , resourceName + " Nuggets" );
365+ }
207366 default -> throw new IllegalStateException ("Unexpected resource type for primary resource." );
208- });
367+ }
209368 }
210369 }
211370
@@ -313,7 +472,10 @@ private void addBlocks() {
313472 add (MekanismBlocks .FLUORITE_BLOCK , "Fluorite Block" );
314473 //Dynamic storage blocks
315474 for (Map .Entry <IResource , BlockRegistryObject <?, ?>> entry : MekanismBlocks .PROCESSED_RESOURCE_BLOCKS .entrySet ()) {
316- add (entry .getValue (), formatAndCapitalize (entry .getKey ().getRegistrySuffix ()) + " Block" );
475+ IResource key = entry .getKey ();
476+ String name = formatAndCapitalize (key .getRegistrySuffix ());
477+ add (entry .getValue (), name + " Block" );
478+ addTag (MekanismTags .Items .PROCESSED_RESOURCE_BLOCKS .get (key ), name + "Storage Blocks" );
317479 }
318480
319481 //Tiered things
@@ -1575,6 +1737,7 @@ private void addOre(OreType type, String description) {
15751737 add (oreBlockType .stone (), name + " Ore" );
15761738 add (oreBlockType .stoneBlock ().getDescriptionTranslationKey (), description );
15771739 add (oreBlockType .deepslate (), "Deepslate " + name + " Ore" );
1740+ addTag (MekanismTags .Items .ORES .get (type ), name + " Ores" );
15781741 }
15791742
15801743 private void addTiered (IItemProvider basic , IItemProvider advanced , IItemProvider elite , IItemProvider ultimate , String name ) {
0 commit comments