11package com .mcmoddev .mmdlogger ;
22
33import net .minecraftforge .oredict .OreDictionary ;
4-
4+ import java . util . HashMap ;
55import java .util .List ;
6+ import java .util .Map ;
67
78import org .apache .logging .log4j .LogManager ;
89import org .apache .logging .log4j .Logger ;
10+
911import net .minecraft .item .Item ;
1012import net .minecraft .item .ItemStack ;
13+ import net .minecraftforge .common .MinecraftForge ;
1114import net .minecraftforge .common .config .Configuration ;
1215import net .minecraftforge .fml .common .Mod ;
1316import net .minecraftforge .fml .common .Mod .EventHandler ;
@@ -23,12 +26,17 @@ public class MMDLogger {
2326 public static final String MODID = "mmdlogger" ;
2427 public static final String VERSION = "1.0" ;
2528
29+ protected static final Map <String , String > ItemToOreDictMap = new HashMap <>();
30+
2631 private Logger logger ;
2732 private boolean loggingOn = false ;
33+ protected static boolean tooltipsOn = false ;
2834
2935 @ EventHandler
3036 public void preInit (FMLPreInitializationEvent event )
3137 {
38+ MinecraftForge .EVENT_BUS .register (new MMDLoggerEventBusSubscriber ());
39+
3240 Configuration modConfig = new Configuration (event .getSuggestedConfigurationFile ());
3341 modConfig .load ();
3442
@@ -37,6 +45,9 @@ public void preInit(FMLPreInitializationEvent event)
3745 loggingOn = modConfig .getBoolean ("OREDICT_LOGGING" , OPTIONS , loggingOn ,
3846 "If true, then ore dict names and corresponding id's are logged" );
3947
48+ tooltipsOn = modConfig .getBoolean ("OREDICT_TOOLTIPS" , OPTIONS , tooltipsOn ,
49+ "If true, then ore dict names are displayed in tooltips" );
50+
4051 modConfig .save ();
4152
4253 if (loggingOn ) {
@@ -47,20 +58,21 @@ public void preInit(FMLPreInitializationEvent event)
4758 @ EventHandler
4859 public void postInit (FMLPostInitializationEvent event )
4960 {
50- if (loggingOn ) {
51- List <ItemStack > items ;
52- int oreID ;
53-
61+ if (loggingOn ) {
5462 for (String oreName : OreDictionary .getOreNames ()) {
55- oreID = OreDictionary .getOreID (oreName );
56- items = OreDictionary .getOres (oreName );
63+ int oreID = OreDictionary .getOreID (oreName );
64+ List < ItemStack > items = OreDictionary .getOres (oreName );
5765
5866 for (ItemStack itemStack : items ) {
5967 Item item = itemStack .getItem ();
6068
61- logger .info ("Ore Dictionary Entry: Ore Name: %s, Ore ID: %s, Unlocalised Name: %s, Block ID: %s, Registry Name: %s" , oreName , oreID , item .getUnlocalizedName (), Item .getIdFromItem (item ), item .getRegistryName ());
69+ int meta = item .getMetadata (itemStack );
70+
71+ ItemToOreDictMap .put (Item .getIdFromItem (item ) + ":" + meta , oreName );
72+
73+ logger .info ("Ore Dictionary Entry: Ore Name: %s, Ore ID: %s, Unlocalised Name: %s, Block ID: %s, Block Meta: %s, Registry Name: %s" , oreName , oreID , item .getUnlocalizedName (), Item .getIdFromItem (item ), meta , item .getRegistryName ());
6274 }
6375 }
6476 }
65- }
77+ }
6678}
0 commit comments