package crazypants.enderio.nei; import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.OreDictionary; import codechicken.nei.api.API; import codechicken.nei.api.IConfigureNEI; import crazypants.enderio.EnderIO; import crazypants.enderio.conduit.gas.GasUtil; import crazypants.enderio.config.Config; import crazypants.enderio.machine.invpanel.GuiInventoryPanel; import crazypants.enderio.machine.invpanel.client.InventoryPanelNEIOverlayHandler; import crazypants.enderio.machine.painter.PainterUtil; public class NEIEnderIOConfig implements IConfigureNEI { @Override public void loadConfig() { API.registerRecipeHandler(new AlloySmelterRecipeHandler()); API.registerUsageHandler(new AlloySmelterRecipeHandler()); API.registerRecipeHandler(new SagMillRecipeHandler()); API.registerUsageHandler(new SagMillRecipeHandler()); API.registerRecipeHandler(new VatRecipeHandler()); API.registerUsageHandler(new VatRecipeHandler()); API.registerRecipeHandler(new EnchanterRecipeHandler()); API.registerUsageHandler(new EnchanterRecipeHandler()); API.registerRecipeHandler(new SliceAndSpliceRecipeHandler()); API.registerUsageHandler(new SliceAndSpliceRecipeHandler()); API.registerRecipeHandler(new SoulBinderRecipeHandler()); API.registerUsageHandler(new SoulBinderRecipeHandler()); API.registerGuiOverlayHandler(GuiInventoryPanel.class, new InventoryPanelNEIOverlayHandler(), "crafting"); API.hideItem(new ItemStack(EnderIO.blockConduitFacade)); API.hideItem(new ItemStack(EnderIO.itemEnderface)); API.hideItem(PainterUtil.applyDefaultPaintedState(new ItemStack(EnderIO.blockPaintedCarpet))); API.hideItem(PainterUtil.applyDefaultPaintedState(new ItemStack(EnderIO.blockPaintedSlab))); API.hideItem(PainterUtil.applyDefaultPaintedState(new ItemStack(EnderIO.blockPaintedFence))); API.hideItem(PainterUtil.applyDefaultPaintedState(new ItemStack(EnderIO.blockPaintedFenceGate))); API.hideItem(PainterUtil.applyDefaultPaintedState(new ItemStack(EnderIO.blockPaintedGlowstone))); API.hideItem(PainterUtil.applyDefaultPaintedState(new ItemStack(EnderIO.blockPaintedStair))); API.hideItem(PainterUtil.applyDefaultPaintedState(new ItemStack(EnderIO.blockPaintedWall))); API.hideItem(PainterUtil.applyDefaultPaintedState(new ItemStack(EnderIO.blockPaintedDoubleSlab))); if(!Config.photovoltaicCellEnabled) { API.hideItem(new ItemStack(EnderIO.blockSolarPanel)); } if(!Config.travelAnchorEnabled) { API.hideItem(new ItemStack(EnderIO.itemTravelStaff)); } if(!Config.reinforcedObsidianEnabled) { API.hideItem(new ItemStack(EnderIO.blockReinforcedObsidian)); } if((!Config.transceiverEnabled || !Config.enderRailEnabled) && EnderIO.blockEnderRail != null) { API.hideItem(new ItemStack(EnderIO.blockEnderRail)); } if(!Config.transceiverEnabled && EnderIO.blockTransceiver != null) { API.hideItem(new ItemStack(EnderIO.blockTransceiver)); } if(!Config.reservoirEnabled) { API.hideItem(new ItemStack(EnderIO.blockReservoir)); } if(!GasUtil.isGasConduitEnabled()) { API.hideItem(new ItemStack(EnderIO.itemGasConduit)); } API.hideItem(new ItemStack(EnderIO.blockHyperCube)); API.hideItem(new ItemStack(EnderIO.blockCapacitorBank, 1, OreDictionary.WILDCARD_VALUE)); } @Override public String getName() { return "Ender IO NEI Plugin"; } @Override public String getVersion() { return EnderIO.VERSION; } }