TechReborn/src/main/java/techreborn/init/OreDict.java

126 lines
6.1 KiB
Java
Raw Normal View History

package techreborn.init;
import com.google.common.collect.ImmutableList;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.common.Loader;
import net.minecraftforge.oredict.OreDictionary;
import techreborn.Core;
import techreborn.blocks.BlockMachineFrame;
import techreborn.items.*;
import techreborn.parts.powerCables.ItemStandaloneCables;
import techreborn.utils.OreDictUtils;
public class OreDict {
private static final ImmutableList<String> plateGenIgnores = ImmutableList.of(
"hot", //Hot ingots
"mixedMetal", //Mixed metal has own version of plate
"iridiumAlloy", //Iridium alloy is plate itself
ModItems.META_PLACEHOLDER //...
);
public static void init() {
if(Loader.isModLoaded("IC2")) {
Core.logHelper.info("IC2 installed, enabling integration");
2016-07-16 23:16:22 +02:00
IC2Dict.init();
}
OreDictionary.registerOre("reBattery", ModItems.reBattery);
OreDictionary.registerOre("circuitBasic", ItemParts.getPartByName("electronicCircuit"));
OreDictionary.registerOre("circuitAdvanced", ItemParts.getPartByName("advancedCircuit"));
OreDictionary.registerOre("circuitStorage", ItemParts.getPartByName("dataStorageCircuit"));
OreDictionary.registerOre("circuitElite", ItemParts.getPartByName("dataControlCircuit"));
OreDictionary.registerOre("circuitMaster", ItemParts.getPartByName("energyFlowCircuit"));
OreDictionary.registerOre("machineBlockBasic", BlockMachineFrame.getFrameByName("machine", 1));
OreDictionary.registerOre("machineBlockAdvanced", BlockMachineFrame.getFrameByName("advancedMachine", 1));
OreDictionary.registerOre("machineBlockElite", BlockMachineFrame.getFrameByName("highlyAdvancedMachine", 1));
OreDictionary.registerOre("lapotronCrystal", ModItems.lapotronCrystal);
OreDictionary.registerOre("energyCrystal", ModItems.energyCrystal);
OreDictionary.registerOre("drillBasic", ModItems.diamondDrill);
OreDictionary.registerOre("drillDiamond", ModItems.diamondDrill);
OreDictionary.registerOre("industrialTnt", Blocks.TNT);
OreDictionary.registerOre("craftingIndustrialDiamond", Items.DIAMOND);
OreDictionary.registerOre("insulatedGoldCableItem", ItemStandaloneCables.getCableByName("insulatedgold"));
OreDictionary.registerOre("fertilizer", new ItemStack(Items.DYE, 1, 15));
OreDictionary.registerOre("ic2Generator", ModBlocks.Generator);
OreDictionary.registerOre("ic2SolarPanel", ModBlocks.solarPanel);
OreDictionary.registerOre("ic2Macerator", ModBlocks.Grinder);
OreDictionary.registerOre("ic2Extractor", ModBlocks.Extractor);
OreDictionary.registerOre("ic2Windmill", ModBlocks.windMill);
OreDictionary.registerOre("ic2Watermill", ModBlocks.waterMill);
//OreDictionary.registerOre("uran235", nothing);
//OreDictionary.registerOre("uran238", nothing);
//OreDictionary.registerOre("smallUran235", nothing);
OreDictionary.registerOre("fenceIron", ModBlocks.ironFence);
OreDictionary.registerOre("woodRubber", ModBlocks.rubberLog);
OreDictionary.registerOre("glassReinforced", ModBlocks.reinforcedglass);
OreDictionary.registerOre("diamondTR", ItemDusts.getDustByName("Diamond"));
OreDictionary.registerOre("diamondTR", Items.DIAMOND);
OreDictionary.registerOre("craftingGrinder", ItemParts.getPartByName("diamondGrindingHead"));
OreDictionary.registerOre("craftingGrinder", ItemParts.getPartByName("tungstenGrindingHead"));
OreDictionary.registerOre("craftingSuperconductor", ItemParts.getPartByName("superconductor"));
OreDictionary.registerOre("batteryUltimate", ItemParts.getPartByName("diamondGrindingHead"));
OreDictionary.registerOre("materialResin", ItemParts.getPartByName("rubberSap"));
OreDictionary.registerOre("materialRubber", ItemParts.getPartByName("rubber"));
OreDictionary.registerOre("pulpWood", ItemDusts.getDustByName("sawDust"));
//Gems registration
for(String type : ItemGems.types) {
if(type.equals(ModItems.META_PLACEHOLDER)) continue; //Aware of placeholders!
String upper = OreDictUtils.toFirstUpper(type);
OreDictionary.registerOre("gem" + upper, ItemGems.getGemByName(type));
boolean ignoreIt = false;
for(String ignore : plateGenIgnores)
if(type.startsWith(ignore)) ignoreIt = true;
if(!ignoreIt) ItemPlates.registerType(upper);
}
//Ingots registration
for(String type : ItemIngots.types) {
if(type.equals(ModItems.META_PLACEHOLDER)) continue; //Aware of placeholders!
String upperName = OreDictUtils.toFirstUpper(type);
OreDictionary.registerOre("ingot" + upperName, ItemIngots.getIngotByName(type));
boolean ignoreIt = false;
for(String ignore : plateGenIgnores)
if(type.startsWith(ignore)) ignoreIt = true;
if(!ignoreIt) ItemPlates.registerType(type);
}
//Dusts, nuggets and plates auto-registration
for(String type : ItemPlates.types) {
if(type.equals(ModItems.META_PLACEHOLDER)) continue; //Aware of placeholders!
String oreDictName = "plate" + OreDictUtils.toFirstUpper(type);
OreDictionary.registerOre(oreDictName, ItemPlates.getPlateByName(type));
}
for(String type : ItemDusts.types) {
if(type.equals(ModItems.META_PLACEHOLDER)) continue; //Aware of placeholders!
String oreDictName = "dust" + OreDictUtils.toFirstUpper(type);
OreDictionary.registerOre(oreDictName, ItemDusts.getDustByName(type));
}
for(String type : ItemNuggets.types) {
if(type.equals(ModItems.META_PLACEHOLDER)) continue; //Aware of placeholders!
String oreDictName = "nugget" + OreDictUtils.toFirstUpper(type);
OreDictionary.registerOre(oreDictName, ItemNuggets.getNuggetByName(type));
}
}
}