From c6eba58fa63382abae2baec0e24258c6e8d35174 Mon Sep 17 00:00:00 2001 From: 70000hp <105080577+70000hp@users.noreply.github.com> Date: Sun, 21 Apr 2024 11:02:54 -0400 Subject: [PATCH 1/2] hopefully a serverside crash fix --- .../com/hbm/handler/imc/IMCHandlerNHNEI.java | 58 +-------------- src/main/java/com/hbm/main/ClientProxy.java | 70 ++++++++++++++++++- src/main/java/com/hbm/main/MainRegistry.java | 3 +- src/main/java/com/hbm/main/NEIConfig.java | 58 ++------------- src/main/java/com/hbm/main/ServerProxy.java | 1 + 5 files changed, 77 insertions(+), 113 deletions(-) diff --git a/src/main/java/com/hbm/handler/imc/IMCHandlerNHNEI.java b/src/main/java/com/hbm/handler/imc/IMCHandlerNHNEI.java index e21d027f8..4df432805 100644 --- a/src/main/java/com/hbm/handler/imc/IMCHandlerNHNEI.java +++ b/src/main/java/com/hbm/handler/imc/IMCHandlerNHNEI.java @@ -11,64 +11,10 @@ import net.minecraft.nbt.NBTTagCompound; import java.util.ArrayList; +import static com.hbm.main.ClientProxy.handlerList; + public class IMCHandlerNHNEI { - - public static ArrayList handlerList() { - ArrayList handlers = new ArrayList<>(); - - handlers.add(new AlloyFurnaceRecipeHandler()); - handlers.add(new ShredderRecipeHandler()); - handlers.add(new PressRecipeHandler()); - handlers.add(new CentrifugeRecipeHandler()); - handlers.add(new GasCentrifugeRecipeHandler()); - handlers.add(new BreederRecipeHandler()); - handlers.add(new CyclotronRecipeHandler()); - handlers.add(new AssemblerRecipeHandler()); - handlers.add(new RefineryRecipeHandler()); - handlers.add(new VacuumRecipeHandler()); - handlers.add(new CrackingHandler()); - handlers.add(new ReformingHandler()); - handlers.add(new HydrotreatingHandler()); - handlers.add(new BoilerRecipeHandler()); - handlers.add(new ChemplantRecipeHandler()); - handlers.add(new CrystallizerRecipeHandler()); - handlers.add(new BookRecipeHandler()); - handlers.add(new FusionRecipeHandler()); - handlers.add(new HadronRecipeHandler()); - handlers.add(new SILEXRecipeHandler()); - handlers.add(new SmithingRecipeHandler()); - handlers.add(new AnvilRecipeHandler()); - handlers.add(new FuelPoolHandler()); - handlers.add(new FluidRecipeHandler()); - handlers.add(new RadiolysisRecipeHandler()); - handlers.add(new CrucibleSmeltingHandler()); - handlers.add(new CrucibleAlloyingHandler()); - handlers.add(new CrucibleCastingHandler()); - handlers.add(new ToolingHandler()); - handlers.add(new ConstructionHandler()); - //universal boyes - handlers.add(new ZirnoxRecipeHandler()); - if(VersatileConfig.rtgDecay()) { - handlers.add(new RTGRecipeHandler()); - } - handlers.add(new LiquefactionHandler()); - handlers.add(new SolidificationHandler()); - handlers.add(new CokingHandler()); - handlers.add(new FractioningHandler()); - handlers.add(new BoilingHandler()); - handlers.add(new CombinationHandler()); - handlers.add(new SawmillHandler()); - handlers.add(new MixerHandler()); - handlers.add(new OutgasserHandler()); - handlers.add(new ElectrolyserFluidHandler()); - handlers.add(new ElectrolyserMetalHandler()); - handlers.add(new AshpitHandler()); - handlers.add(new ArcWelderHandler()); - handlers.add(new ExposureChamberHandler()); - - return handlers; - } public static void IMCSender() { for (TemplateRecipeHandler handler: handlerList()) { diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index d0beabbc7..7e54077a5 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -1,5 +1,10 @@ package com.hbm.main; +import codechicken.nei.recipe.TemplateRecipeHandler; +import com.hbm.config.CustomMachineConfigJSON; +import com.hbm.config.VersatileConfig; +import com.hbm.handler.imc.IMCHandlerNHNEI; +import com.hbm.handler.nei.*; import net.minecraft.block.Block; import net.minecraft.client.Minecraft; import net.minecraft.client.audio.PositionedSoundRecord; @@ -155,7 +160,12 @@ public class ClientProxy extends ServerProxy { MinecraftForge.EVENT_BUS.register(handler); FMLCommonHandler.instance().bus().register(handler); } - + + @Override + public void handleNHNEICompat(){ + IMCHandlerNHNEI.IMCSender(); + } + @Override public void registerTileEntitySpecialRenderer() { //test crap @@ -2150,4 +2160,62 @@ public class ClientProxy extends ServerProxy { if(amplify) color = ColorUtil.amplifyColor(color); return color; } + + public static ArrayList handlerList() { + ArrayList handlers = new ArrayList<>(); + + handlers.add(new AlloyFurnaceRecipeHandler()); + handlers.add(new ShredderRecipeHandler()); + handlers.add(new PressRecipeHandler()); + handlers.add(new CentrifugeRecipeHandler()); + handlers.add(new GasCentrifugeRecipeHandler()); + handlers.add(new BreederRecipeHandler()); + handlers.add(new CyclotronRecipeHandler()); + handlers.add(new AssemblerRecipeHandler()); + handlers.add(new RefineryRecipeHandler()); + handlers.add(new VacuumRecipeHandler()); + handlers.add(new CrackingHandler()); + handlers.add(new ReformingHandler()); + handlers.add(new HydrotreatingHandler()); + handlers.add(new BoilerRecipeHandler()); + handlers.add(new ChemplantRecipeHandler()); + handlers.add(new CrystallizerRecipeHandler()); + handlers.add(new BookRecipeHandler()); + handlers.add(new FusionRecipeHandler()); + handlers.add(new HadronRecipeHandler()); + handlers.add(new SILEXRecipeHandler()); + handlers.add(new SmithingRecipeHandler()); + handlers.add(new AnvilRecipeHandler()); + handlers.add(new FuelPoolHandler()); + handlers.add(new FluidRecipeHandler()); + handlers.add(new RadiolysisRecipeHandler()); + handlers.add(new CrucibleSmeltingHandler()); + handlers.add(new CrucibleAlloyingHandler()); + handlers.add(new CrucibleCastingHandler()); + handlers.add(new ToolingHandler()); + handlers.add(new ConstructionHandler()); + + //universal boyes + handlers.add(new ZirnoxRecipeHandler()); + if(VersatileConfig.rtgDecay()) { + handlers.add(new RTGRecipeHandler()); + } + handlers.add(new LiquefactionHandler()); + handlers.add(new SolidificationHandler()); + handlers.add(new CokingHandler()); + handlers.add(new FractioningHandler()); + handlers.add(new BoilingHandler()); + handlers.add(new CombinationHandler()); + handlers.add(new SawmillHandler()); + handlers.add(new MixerHandler()); + handlers.add(new OutgasserHandler()); + handlers.add(new ElectrolyserFluidHandler()); + handlers.add(new ElectrolyserMetalHandler()); + handlers.add(new AshpitHandler()); + handlers.add(new ArcWelderHandler()); + handlers.add(new ExposureChamberHandler()); + + for(CustomMachineConfigJSON.MachineConfiguration conf : CustomMachineConfigJSON.niceList) handlers.add(new CustomMachineHandler(conf)); + return handlers; + } } diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index 2cbe13204..974b2a722 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -816,10 +816,9 @@ public class MainRegistry { IMCHandler.registerHandler("centrifuge", new IMCCentrifuge()); if (Loader.isModLoaded("NotEnoughItems")){ if (Loader.instance().getIndexedModList().get("NotEnoughItems").getVersion().contains("GTNH")) { - IMCHandlerNHNEI.IMCSender(); + proxy.handleNHNEICompat(); } } - } @EventHandler diff --git a/src/main/java/com/hbm/main/NEIConfig.java b/src/main/java/com/hbm/main/NEIConfig.java index 0fdff6386..d161a3645 100644 --- a/src/main/java/com/hbm/main/NEIConfig.java +++ b/src/main/java/com/hbm/main/NEIConfig.java @@ -25,64 +25,14 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; +import static com.hbm.main.ClientProxy.handlerList; + public class NEIConfig implements IConfigureNEI { @Override public void loadConfig() { - registerHandler(new AlloyFurnaceRecipeHandler()); - registerHandler(new ShredderRecipeHandler()); - registerHandler(new PressRecipeHandler()); - registerHandler(new CentrifugeRecipeHandler()); - registerHandler(new GasCentrifugeRecipeHandler()); - registerHandler(new BreederRecipeHandler()); - registerHandler(new CyclotronRecipeHandler()); - registerHandler(new AssemblerRecipeHandler()); - registerHandler(new RefineryRecipeHandler()); - registerHandler(new VacuumRecipeHandler()); - registerHandler(new CrackingHandler()); - registerHandler(new ReformingHandler()); - registerHandler(new HydrotreatingHandler()); - registerHandler(new BoilerRecipeHandler()); - registerHandler(new ChemplantRecipeHandler()); - registerHandler(new CrystallizerRecipeHandler()); - registerHandler(new BookRecipeHandler()); - registerHandler(new FusionRecipeHandler()); - registerHandler(new HadronRecipeHandler()); - registerHandler(new SILEXRecipeHandler()); - registerHandler(new SmithingRecipeHandler()); - registerHandler(new AnvilRecipeHandler()); - registerHandler(new FuelPoolHandler()); - registerHandler(new RadiolysisRecipeHandler()); - registerHandler(new CrucibleSmeltingHandler()); - registerHandler(new CrucibleAlloyingHandler()); - registerHandler(new CrucibleCastingHandler()); - registerHandler(new ToolingHandler()); - registerHandler(new ConstructionHandler()); - - //universal boyes - registerHandler(new ZirnoxRecipeHandler()); - if(VersatileConfig.rtgDecay()) { - registerHandler(new RTGRecipeHandler()); + for (TemplateRecipeHandler handler: handlerList()) { + registerHandler(handler); } - registerHandler(new LiquefactionHandler()); - registerHandler(new SolidificationHandler()); - registerHandler(new CokingHandler()); - registerHandler(new FractioningHandler()); - registerHandler(new BoilingHandler()); - registerHandler(new CombinationHandler()); - registerHandler(new SawmillHandler()); - registerHandler(new MixerHandler()); - registerHandler(new OutgasserHandler()); - registerHandler(new ElectrolyserFluidHandler()); - registerHandler(new ElectrolyserMetalHandler()); - registerHandler(new AshpitHandler()); - registerHandler(new ArcWelderHandler()); - registerHandler(new ExposureChamberHandler()); - - for(MachineConfiguration conf : CustomMachineConfigJSON.niceList) registerHandlerBypass(new CustomMachineHandler(conf)); - - //fluids - registerHandler(new FluidRecipeHandler()); - //Some things are even beyond my control...or are they? API.hideItem(ItemBattery.getEmptyBattery(ModItems.memory)); API.hideItem(ItemBattery.getFullBattery(ModItems.memory)); diff --git a/src/main/java/com/hbm/main/ServerProxy.java b/src/main/java/com/hbm/main/ServerProxy.java index 15b9203bd..3e48b8e15 100644 --- a/src/main/java/com/hbm/main/ServerProxy.java +++ b/src/main/java/com/hbm/main/ServerProxy.java @@ -34,6 +34,7 @@ public class ServerProxy { public void registerItemRenderer() { } public void registerEntityRenderer() { } public void registerBlockRenderer() { } + public void handleNHNEICompat() { } public void particleControl(double x, double y, double z, int type) { } From f6ff864d21ca18449ab345e6ac88a166e58fcdae Mon Sep 17 00:00:00 2001 From: 70000hp <105080577+70000hp@users.noreply.github.com> Date: Sun, 21 Apr 2024 11:39:06 -0400 Subject: [PATCH 2/2] Merge branch 'aaargh' of https://github.com/70000hp/Hbm-s-Nuclear-Tech-GIT into aaargh --- .../com/hbm/handler/imc/ICompatNHNEI.java | 14 ++++++++++ .../nei/AlloyFurnaceRecipeHandler.java | 16 +++++++++++- .../hbm/handler/nei/AnvilRecipeHandler.java | 26 ++++++++++++++++++- .../handler/nei/AssemblerRecipeHandler.java | 16 +++++++++++- .../hbm/handler/nei/BookRecipeHandler.java | 16 ++++++++++-- .../hbm/handler/nei/BreederRecipeHandler.java | 14 +++++++++- .../handler/nei/ChemplantRecipeHandler.java | 16 +++++++++++- .../hbm/handler/nei/ConstructionHandler.java | 8 ++++++ .../handler/nei/CrucibleAlloyingHandler.java | 12 ++++++++- .../handler/nei/CrucibleCastingHandler.java | 16 +++++++++++- .../handler/nei/CrucibleSmeltingHandler.java | 14 ++++++++-- .../handler/nei/CyclotronRecipeHandler.java | 15 +++++++++-- .../hbm/handler/nei/FluidRecipeHandler.java | 21 ++++++++++++++- .../hbm/handler/nei/FusionRecipeHandler.java | 15 +++++++++-- .../nei/GasCentrifugeRecipeHandler.java | 14 ++++++++-- .../hbm/handler/nei/HadronRecipeHandler.java | 13 +++++++++- .../hbm/handler/nei/NEIUniversalHandler.java | 17 +++++++++--- .../hbm/handler/nei/PressRecipeHandler.java | 15 ++++++++++- .../handler/nei/RadiolysisRecipeHandler.java | 15 +++++++++-- .../handler/nei/RefineryRecipeHandler.java | 13 +++++++++- .../hbm/handler/nei/SILEXRecipeHandler.java | 13 +++++++++- .../handler/nei/ShredderRecipeHandler.java | 13 +++++++++- .../handler/nei/SmithingRecipeHandler.java | 24 ++++++++++++++++- .../com/hbm/handler/nei/ToolingHandler.java | 10 ++++++- src/main/java/com/hbm/main/MainRegistry.java | 9 ++----- src/main/java/com/hbm/main/NEIConfig.java | 8 +++--- 26 files changed, 341 insertions(+), 42 deletions(-) create mode 100644 src/main/java/com/hbm/handler/imc/ICompatNHNEI.java diff --git a/src/main/java/com/hbm/handler/imc/ICompatNHNEI.java b/src/main/java/com/hbm/handler/imc/ICompatNHNEI.java new file mode 100644 index 000000000..37952c867 --- /dev/null +++ b/src/main/java/com/hbm/handler/imc/ICompatNHNEI.java @@ -0,0 +1,14 @@ +package com.hbm.handler.imc; + +import net.minecraft.item.ItemStack; + +import java.util.ArrayList; + +public interface ICompatNHNEI { + /**First item on the list is the icon for the recipe in the NEI GUI, the rest are displayed on the sidebar + * as other items that can be used for the same purpose**/ + ItemStack[] getMachinesForRecipe(); + + String getRecipeID(); + +} diff --git a/src/main/java/com/hbm/handler/nei/AlloyFurnaceRecipeHandler.java b/src/main/java/com/hbm/handler/nei/AlloyFurnaceRecipeHandler.java index 8b76d904b..ee1d09a5b 100644 --- a/src/main/java/com/hbm/handler/nei/AlloyFurnaceRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/AlloyFurnaceRecipeHandler.java @@ -7,6 +7,8 @@ import java.util.List; import java.util.Map; import java.util.Map.Entry; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.gui.GUIDiFurnace; import com.hbm.inventory.recipes.BlastFurnaceRecipes; import com.hbm.inventory.recipes.MachineRecipes; @@ -17,10 +19,22 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class AlloyFurnaceRecipeHandler extends TemplateRecipeHandler { +public class AlloyFurnaceRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { public static ArrayList fuels; + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_difurnace_off), + new ItemStack(ModBlocks.machine_difurnace_rtg_off)}; + } + + @Override + public String getRecipeID() { + return "alloysmelting"; + } + public class SmeltingSet extends TemplateRecipeHandler.CachedRecipe { PositionedStack input1; PositionedStack input2; diff --git a/src/main/java/com/hbm/handler/nei/AnvilRecipeHandler.java b/src/main/java/com/hbm/handler/nei/AnvilRecipeHandler.java index 4df799a33..2621af6f1 100644 --- a/src/main/java/com/hbm/handler/nei/AnvilRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/AnvilRecipeHandler.java @@ -7,7 +7,9 @@ import java.util.ArrayList; import java.util.LinkedList; import java.util.List; +import com.hbm.blocks.ModBlocks; import com.hbm.blocks.machine.NTMAnvil; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.gui.GUIAnvil; import com.hbm.inventory.recipes.anvil.AnvilRecipes; @@ -24,7 +26,29 @@ import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; -public class AnvilRecipeHandler extends TemplateRecipeHandler { +public class AnvilRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.anvil_iron), + new ItemStack(ModBlocks.anvil_lead), + new ItemStack(ModBlocks.anvil_steel), + new ItemStack(ModBlocks.anvil_desh), + new ItemStack(ModBlocks.anvil_saturnite), + new ItemStack(ModBlocks.anvil_ferrouranium), + new ItemStack(ModBlocks.anvil_bismuth_bronze), + new ItemStack(ModBlocks.anvil_arsenic_bronze), + new ItemStack(ModBlocks.anvil_schrabidate), + new ItemStack(ModBlocks.anvil_dnt), + new ItemStack(ModBlocks.anvil_osmiridium), + new ItemStack(ModBlocks.anvil_murky)}; + } + + @Override + public String getRecipeID() { + return "ntmAnvil"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); diff --git a/src/main/java/com/hbm/handler/nei/AssemblerRecipeHandler.java b/src/main/java/com/hbm/handler/nei/AssemblerRecipeHandler.java index f533fc02c..d3ddb9df0 100644 --- a/src/main/java/com/hbm/handler/nei/AssemblerRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/AssemblerRecipeHandler.java @@ -6,6 +6,8 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.gui.GUIMachineAssembler; import com.hbm.inventory.recipes.AssemblerRecipes; @@ -19,13 +21,25 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class AssemblerRecipeHandler extends TemplateRecipeHandler { +public class AssemblerRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); public LinkedList> guiGui = new LinkedList>(); + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_assembler), + new ItemStack(ModBlocks.machine_assemfac)}; + } + + @Override + public String getRecipeID() { + return "assembly"; + } + public class SmeltingSet extends TemplateRecipeHandler.CachedRecipe { List input; diff --git a/src/main/java/com/hbm/handler/nei/BookRecipeHandler.java b/src/main/java/com/hbm/handler/nei/BookRecipeHandler.java index 44e6c7ded..3b18cd6f6 100644 --- a/src/main/java/com/hbm/handler/nei/BookRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/BookRecipeHandler.java @@ -4,6 +4,8 @@ import java.awt.Rectangle; import java.util.ArrayList; import java.util.List; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.RecipesCommon.OreDictStack; @@ -14,12 +16,22 @@ import com.hbm.inventory.recipes.MagicRecipes.MagicRecipe; import codechicken.nei.NEIServerUtils; import codechicken.nei.PositionedStack; import codechicken.nei.recipe.TemplateRecipeHandler; +import com.hbm.items.ModItems; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class BookRecipeHandler extends TemplateRecipeHandler { +public class BookRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModItems.book_of_)}; + } - public class RecipeSet extends TemplateRecipeHandler.CachedRecipe { + @Override + public String getRecipeID() { + return "book_of_boxcars"; + } + public class RecipeSet extends TemplateRecipeHandler.CachedRecipe { List input; PositionedStack result; diff --git a/src/main/java/com/hbm/handler/nei/BreederRecipeHandler.java b/src/main/java/com/hbm/handler/nei/BreederRecipeHandler.java index 8f91f8d75..0fc3f70d2 100644 --- a/src/main/java/com/hbm/handler/nei/BreederRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/BreederRecipeHandler.java @@ -5,6 +5,8 @@ import java.util.Arrays; import java.util.List; import java.util.Map; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.gui.GUIMachineReactorBreeding; import com.hbm.inventory.recipes.BreederRecipes; import com.hbm.inventory.recipes.BreederRecipes.BreederRecipe; @@ -16,8 +18,18 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class BreederRecipeHandler extends TemplateRecipeHandler { +public class BreederRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_reactor_breeding)}; + } + + @Override + public String getRecipeID() { + return "breeding"; + } public class BreedingSet extends TemplateRecipeHandler.CachedRecipe { PositionedStack input; diff --git a/src/main/java/com/hbm/handler/nei/ChemplantRecipeHandler.java b/src/main/java/com/hbm/handler/nei/ChemplantRecipeHandler.java index 9ef27b9a9..b0b5e19a4 100644 --- a/src/main/java/com/hbm/handler/nei/ChemplantRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/ChemplantRecipeHandler.java @@ -5,6 +5,8 @@ import java.util.ArrayList; import java.util.LinkedList; import java.util.List; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.FluidStack; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.gui.GUIMachineChemplant; @@ -20,14 +22,26 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class ChemplantRecipeHandler extends TemplateRecipeHandler { +public class ChemplantRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); public LinkedList> guiGui = new LinkedList>(); + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_chemplant), + new ItemStack(ModBlocks.machine_chemfac)}; + } + + @Override + public String getRecipeID() { + return "chemistry"; + } public class RecipeSet extends TemplateRecipeHandler.CachedRecipe { + PositionedStack[] itemIn = new PositionedStack[4]; PositionedStack[] fluidIn = new PositionedStack[2]; PositionedStack[] itemOut = new PositionedStack[4]; diff --git a/src/main/java/com/hbm/handler/nei/ConstructionHandler.java b/src/main/java/com/hbm/handler/nei/ConstructionHandler.java index 91f46bd1d..baf61bfc1 100644 --- a/src/main/java/com/hbm/handler/nei/ConstructionHandler.java +++ b/src/main/java/com/hbm/handler/nei/ConstructionHandler.java @@ -16,6 +16,14 @@ public class ConstructionHandler extends NEIUniversalHandler { super("Construction", getRecipes(true), getRecipes(false)); } + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModItems.acetylene_torch), + new ItemStack(ModItems.blowtorch), + new ItemStack(ModItems.boltgun)}; + } + @Override public String getKey() { return "ntmConstruction"; diff --git a/src/main/java/com/hbm/handler/nei/CrucibleAlloyingHandler.java b/src/main/java/com/hbm/handler/nei/CrucibleAlloyingHandler.java index 80ccd314b..4cdca10fe 100644 --- a/src/main/java/com/hbm/handler/nei/CrucibleAlloyingHandler.java +++ b/src/main/java/com/hbm/handler/nei/CrucibleAlloyingHandler.java @@ -6,6 +6,7 @@ import java.util.LinkedList; import java.util.List; import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.material.Mats; import com.hbm.inventory.material.Mats.MaterialStack; import com.hbm.inventory.material.NTMMaterial; @@ -20,7 +21,16 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class CrucibleAlloyingHandler extends TemplateRecipeHandler { +public class CrucibleAlloyingHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_crucible)}; + } + @Override + public String getRecipeID() { + return "ntmCrucibleAlloying"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); diff --git a/src/main/java/com/hbm/handler/nei/CrucibleCastingHandler.java b/src/main/java/com/hbm/handler/nei/CrucibleCastingHandler.java index 1befff001..eff865fb4 100644 --- a/src/main/java/com/hbm/handler/nei/CrucibleCastingHandler.java +++ b/src/main/java/com/hbm/handler/nei/CrucibleCastingHandler.java @@ -6,6 +6,8 @@ import java.util.Arrays; import java.util.LinkedList; import java.util.List; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.material.Mats; import com.hbm.inventory.recipes.CrucibleRecipes; import com.hbm.items.machine.ItemMold; @@ -17,7 +19,19 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class CrucibleCastingHandler extends TemplateRecipeHandler { +public class CrucibleCastingHandler extends TemplateRecipeHandler implements ICompatNHNEI { + + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.foundry_basin), + new ItemStack(ModBlocks.foundry_mold), + new ItemStack(ModBlocks.machine_strand_caster)}; + } + @Override + public String getRecipeID() { + return "ntmCrucibleFoundry"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); diff --git a/src/main/java/com/hbm/handler/nei/CrucibleSmeltingHandler.java b/src/main/java/com/hbm/handler/nei/CrucibleSmeltingHandler.java index b6af31dc1..63bbc26e7 100644 --- a/src/main/java/com/hbm/handler/nei/CrucibleSmeltingHandler.java +++ b/src/main/java/com/hbm/handler/nei/CrucibleSmeltingHandler.java @@ -9,6 +9,7 @@ import java.util.List; import java.util.Map.Entry; import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.recipes.CrucibleRecipes; import com.hbm.lib.RefStrings; @@ -19,8 +20,17 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class CrucibleSmeltingHandler extends TemplateRecipeHandler { - +public class CrucibleSmeltingHandler extends TemplateRecipeHandler implements ICompatNHNEI { + + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_crucible)}; + } + @Override + public String getRecipeID() { + return "ntmCrucibleSmelting"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); diff --git a/src/main/java/com/hbm/handler/nei/CyclotronRecipeHandler.java b/src/main/java/com/hbm/handler/nei/CyclotronRecipeHandler.java index b4f9221f2..51b0a6b6f 100644 --- a/src/main/java/com/hbm/handler/nei/CyclotronRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/CyclotronRecipeHandler.java @@ -6,6 +6,8 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.gui.GUIMachineCyclotron; import com.hbm.inventory.recipes.CyclotronRecipes; import com.hbm.lib.RefStrings; @@ -16,8 +18,17 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class CyclotronRecipeHandler extends TemplateRecipeHandler { - +public class CyclotronRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_cyclotron)}; + } + + @Override + public String getRecipeID() { + return "cyclotronProcessing"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); diff --git a/src/main/java/com/hbm/handler/nei/FluidRecipeHandler.java b/src/main/java/com/hbm/handler/nei/FluidRecipeHandler.java index 792f4465f..a575f867f 100644 --- a/src/main/java/com/hbm/handler/nei/FluidRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/FluidRecipeHandler.java @@ -5,7 +5,10 @@ import java.util.Arrays; import java.util.List; import java.util.Map; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.recipes.MachineRecipes; +import com.hbm.items.ModItems; import com.hbm.lib.RefStrings; import codechicken.nei.NEIServerUtils; @@ -14,7 +17,23 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class FluidRecipeHandler extends TemplateRecipeHandler { +public class FluidRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModItems.fluid_barrel_empty), + new ItemStack(ModItems.fluid_tank_empty), + new ItemStack(ModItems.fluid_tank_lead_empty), + new ItemStack(ModItems.canister_empty), + new ItemStack(ModItems.gas_empty), + new ItemStack(ModItems.cell_empty), + new ItemStack(ModItems.disperser_canister_empty), + new ItemStack(ModItems.glyphid_gland_empty)}; + } + @Override + public String getRecipeID() { + return "fluidcons"; + } public class SmeltingSet extends TemplateRecipeHandler.CachedRecipe { diff --git a/src/main/java/com/hbm/handler/nei/FusionRecipeHandler.java b/src/main/java/com/hbm/handler/nei/FusionRecipeHandler.java index ff6624e23..f5a69a4ec 100644 --- a/src/main/java/com/hbm/handler/nei/FusionRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/FusionRecipeHandler.java @@ -6,6 +6,8 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.gui.GUIITER; import com.hbm.inventory.recipes.FusionRecipes; import com.hbm.lib.RefStrings; @@ -16,8 +18,17 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class FusionRecipeHandler extends TemplateRecipeHandler { - +public class FusionRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.iter)}; + } + @Override + public String getRecipeID() { + return "fusion"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); diff --git a/src/main/java/com/hbm/handler/nei/GasCentrifugeRecipeHandler.java b/src/main/java/com/hbm/handler/nei/GasCentrifugeRecipeHandler.java index add9dcf95..085ec8b7a 100644 --- a/src/main/java/com/hbm/handler/nei/GasCentrifugeRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/GasCentrifugeRecipeHandler.java @@ -9,6 +9,8 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.gui.GUIMachineGasCent; import com.hbm.inventory.recipes.GasCentrifugeRecipes; import com.hbm.inventory.recipes.MachineRecipes; @@ -22,8 +24,16 @@ import net.minecraft.client.gui.FontRenderer; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class GasCentrifugeRecipeHandler extends TemplateRecipeHandler { - +public class GasCentrifugeRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_gascent)}; + } + @Override + public String getRecipeID() { + return "gascentprocessing"; + } public static ArrayList fuels; public class SmeltingSet extends TemplateRecipeHandler.CachedRecipe { diff --git a/src/main/java/com/hbm/handler/nei/HadronRecipeHandler.java b/src/main/java/com/hbm/handler/nei/HadronRecipeHandler.java index cbd520858..b9325cd9c 100644 --- a/src/main/java/com/hbm/handler/nei/HadronRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/HadronRecipeHandler.java @@ -8,6 +8,8 @@ import java.util.LinkedList; import java.util.List; import java.util.Locale; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.gui.GUIHadron; import com.hbm.inventory.recipes.HadronRecipes; import com.hbm.inventory.recipes.HadronRecipes.HadronRecipe; @@ -21,8 +23,17 @@ import net.minecraft.client.gui.FontRenderer; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class HadronRecipeHandler extends TemplateRecipeHandler { +public class HadronRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.hadron_core)}; + } + @Override + public String getRecipeID() { + return "hadron"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); diff --git a/src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java b/src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java index 0bb53100a..06ad8caaf 100644 --- a/src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java +++ b/src/main/java/com/hbm/handler/nei/NEIUniversalHandler.java @@ -10,6 +10,8 @@ import java.util.LinkedList; import java.util.List; import java.util.Map.Entry; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.lib.RefStrings; import com.hbm.util.InventoryUtil; @@ -21,8 +23,13 @@ import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -public abstract class NEIUniversalHandler extends TemplateRecipeHandler { - +public abstract class NEIUniversalHandler extends TemplateRecipeHandler implements ICompatNHNEI { + + @Override + public ItemStack[] getMachinesForRecipe() { + return machine; + } + public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); @@ -34,7 +41,6 @@ public abstract class NEIUniversalHandler extends TemplateRecipeHandler { public final HashMap recipes; public HashMap machineOverrides; /// SETUP /// - public NEIUniversalHandler(String display, ItemStack machine[], HashMap recipes) { this.display = display; this.machine = machine; @@ -305,4 +311,9 @@ public abstract class NEIUniversalHandler extends TemplateRecipeHandler { } public abstract String getKey(); + + @Override + public String getRecipeID() { + return getKey(); + } } diff --git a/src/main/java/com/hbm/handler/nei/PressRecipeHandler.java b/src/main/java/com/hbm/handler/nei/PressRecipeHandler.java index fbc14c5cd..f0b2adefb 100644 --- a/src/main/java/com/hbm/handler/nei/PressRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/PressRecipeHandler.java @@ -7,6 +7,8 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.interfaces.Untested; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.RecipesCommon.ComparableStack; @@ -25,8 +27,19 @@ import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; @Untested -public class PressRecipeHandler extends TemplateRecipeHandler { +public class PressRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_press), + new ItemStack(ModBlocks.machine_epress), + new ItemStack(ModBlocks.machine_conveyor_press)}; + } + @Override + public String getRecipeID() { + return "pressing"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); diff --git a/src/main/java/com/hbm/handler/nei/RadiolysisRecipeHandler.java b/src/main/java/com/hbm/handler/nei/RadiolysisRecipeHandler.java index 9d5d619d4..84cd78979 100644 --- a/src/main/java/com/hbm/handler/nei/RadiolysisRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/RadiolysisRecipeHandler.java @@ -8,6 +8,8 @@ import java.util.LinkedList; import java.util.List; import java.util.Map.Entry; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.gui.GUIRadiolysis; import com.hbm.inventory.recipes.RadiolysisRecipes; import com.hbm.lib.RefStrings; @@ -18,8 +20,17 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class RadiolysisRecipeHandler extends TemplateRecipeHandler { - +public class RadiolysisRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_radiolysis)}; + } + @Override + public String getRecipeID() { + return "ntmRadiolysis"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); diff --git a/src/main/java/com/hbm/handler/nei/RefineryRecipeHandler.java b/src/main/java/com/hbm/handler/nei/RefineryRecipeHandler.java index f3068bf17..f085e4ebe 100644 --- a/src/main/java/com/hbm/handler/nei/RefineryRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/RefineryRecipeHandler.java @@ -7,6 +7,8 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.gui.GUIMachineRefinery; import com.hbm.inventory.recipes.RefineryRecipes; import com.hbm.lib.RefStrings; @@ -16,8 +18,17 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class RefineryRecipeHandler extends TemplateRecipeHandler { +public class RefineryRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_refinery)}; + } + @Override + public String getRecipeID() { + return "refinery"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); diff --git a/src/main/java/com/hbm/handler/nei/SILEXRecipeHandler.java b/src/main/java/com/hbm/handler/nei/SILEXRecipeHandler.java index 444489abc..bc1363383 100644 --- a/src/main/java/com/hbm/handler/nei/SILEXRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/SILEXRecipeHandler.java @@ -7,6 +7,8 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.gui.GUISILEX; import com.hbm.inventory.recipes.SILEXRecipes; import com.hbm.inventory.recipes.SILEXRecipes.SILEXRecipe; @@ -24,8 +26,17 @@ import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; import net.minecraft.util.EnumChatFormatting; -public class SILEXRecipeHandler extends TemplateRecipeHandler { +public class SILEXRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_silex)}; + } + @Override + public String getRecipeID() { + return "silex"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); diff --git a/src/main/java/com/hbm/handler/nei/ShredderRecipeHandler.java b/src/main/java/com/hbm/handler/nei/ShredderRecipeHandler.java index 396109047..7524f5091 100644 --- a/src/main/java/com/hbm/handler/nei/ShredderRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/ShredderRecipeHandler.java @@ -7,6 +7,8 @@ import java.util.LinkedList; import java.util.List; import java.util.Map; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.gui.GUIMachineShredder; import com.hbm.inventory.recipes.MachineRecipes; @@ -19,8 +21,17 @@ import codechicken.nei.recipe.TemplateRecipeHandler; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class ShredderRecipeHandler extends TemplateRecipeHandler { +public class ShredderRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.machine_shredder)}; + } + @Override + public String getRecipeID() { + return "ntmRadiolysis"; + } public static ArrayList fuels; public LinkedList transferRectsRec = new LinkedList(); diff --git a/src/main/java/com/hbm/handler/nei/SmithingRecipeHandler.java b/src/main/java/com/hbm/handler/nei/SmithingRecipeHandler.java index 35e698422..07e502064 100644 --- a/src/main/java/com/hbm/handler/nei/SmithingRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/SmithingRecipeHandler.java @@ -5,6 +5,8 @@ import java.util.Arrays; import java.util.LinkedList; import java.util.List; +import com.hbm.blocks.ModBlocks; +import com.hbm.handler.imc.ICompatNHNEI; import com.hbm.inventory.gui.GUIAnvil; import com.hbm.inventory.recipes.anvil.AnvilRecipes; import com.hbm.inventory.recipes.anvil.AnvilSmithingRecipe; @@ -18,8 +20,28 @@ import net.minecraft.client.gui.FontRenderer; import net.minecraft.client.gui.inventory.GuiContainer; import net.minecraft.item.ItemStack; -public class SmithingRecipeHandler extends TemplateRecipeHandler { +public class SmithingRecipeHandler extends TemplateRecipeHandler implements ICompatNHNEI { + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModBlocks.anvil_iron), + new ItemStack(ModBlocks.anvil_lead), + new ItemStack(ModBlocks.anvil_steel), + new ItemStack(ModBlocks.anvil_desh), + new ItemStack(ModBlocks.anvil_saturnite), + new ItemStack(ModBlocks.anvil_ferrouranium), + new ItemStack(ModBlocks.anvil_bismuth_bronze), + new ItemStack(ModBlocks.anvil_arsenic_bronze), + new ItemStack(ModBlocks.anvil_schrabidate), + new ItemStack(ModBlocks.anvil_dnt), + new ItemStack(ModBlocks.anvil_osmiridium), + new ItemStack(ModBlocks.anvil_murky)}; + } + @Override + public String getRecipeID() { + return "ntmSmithing"; + } public LinkedList transferRectsRec = new LinkedList(); public LinkedList transferRectsGui = new LinkedList(); public LinkedList> guiRec = new LinkedList>(); diff --git a/src/main/java/com/hbm/handler/nei/ToolingHandler.java b/src/main/java/com/hbm/handler/nei/ToolingHandler.java index c50074f1e..9c0420b18 100644 --- a/src/main/java/com/hbm/handler/nei/ToolingHandler.java +++ b/src/main/java/com/hbm/handler/nei/ToolingHandler.java @@ -1,9 +1,17 @@ package com.hbm.handler.nei; import com.hbm.blocks.generic.BlockToolConversion; +import com.hbm.items.ModItems; +import net.minecraft.item.ItemStack; public class ToolingHandler extends NEIUniversalHandler { - + @Override + public ItemStack[] getMachinesForRecipe() { + return new ItemStack[]{ + new ItemStack(ModItems.boltgun), + new ItemStack(ModItems.blowtorch), + new ItemStack(ModItems.acetylene_torch)}; + } public ToolingHandler() { super("Tooling", BlockToolConversion.getRecipes(true), BlockToolConversion.getRecipes(false)); } diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index 59b5d6031..19578d3e4 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -52,13 +52,10 @@ import com.hbm.world.feature.OreCave; import com.hbm.world.feature.OreLayer3D; import com.hbm.world.feature.SchistStratum; import com.hbm.world.generator.CellularDungeonFactory; -import cpw.mods.fml.common.FMLCommonHandler; -import cpw.mods.fml.common.Mod; +import cpw.mods.fml.common.*; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.Mod.Instance; import cpw.mods.fml.common.Mod.Metadata; -import cpw.mods.fml.common.ModMetadata; -import cpw.mods.fml.common.SidedProxy; import cpw.mods.fml.common.event.*; import cpw.mods.fml.common.event.FMLInterModComms.IMCEvent; import cpw.mods.fml.common.event.FMLInterModComms.IMCMessage; @@ -820,14 +817,12 @@ public class MainRegistry { IMCHandler.registerHandler("blastfurnace", new IMCBlastFurnace()); IMCHandler.registerHandler("crystallizer", new IMCCrystallizer()); IMCHandler.registerHandler("centrifuge", new IMCCentrifuge()); -<<<<<<< HEAD + if (Loader.isModLoaded("NotEnoughItems")){ if (Loader.instance().getIndexedModList().get("NotEnoughItems").getVersion().contains("GTNH")) { proxy.handleNHNEICompat(); } } -======= ->>>>>>> 13aaa627b243ad1b3aa7dc13c07882396fbdbfbb } @EventHandler diff --git a/src/main/java/com/hbm/main/NEIConfig.java b/src/main/java/com/hbm/main/NEIConfig.java index 12e4d8b4f..d161a3645 100644 --- a/src/main/java/com/hbm/main/NEIConfig.java +++ b/src/main/java/com/hbm/main/NEIConfig.java @@ -1,12 +1,15 @@ package com.hbm.main; +import java.util.ArrayList; import java.util.List; +import codechicken.nei.recipe.*; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.generic.BlockMotherOfAllOres.TileEntityRandomOre; import com.hbm.config.CustomMachineConfigJSON; import com.hbm.config.CustomMachineConfigJSON.MachineConfiguration; import com.hbm.config.VersatileConfig; +import com.hbm.handler.imc.IMCHandlerNHNEI; import com.hbm.handler.nei.*; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemBattery; @@ -16,10 +19,6 @@ import codechicken.nei.api.API; import codechicken.nei.api.IConfigureNEI; import codechicken.nei.api.IHighlightHandler; import codechicken.nei.api.ItemInfo.Layout; -import codechicken.nei.recipe.GuiCraftingRecipe; -import codechicken.nei.recipe.GuiUsageRecipe; -import codechicken.nei.recipe.ICraftingHandler; -import codechicken.nei.recipe.IUsageHandler; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; @@ -29,7 +28,6 @@ import net.minecraft.world.World; import static com.hbm.main.ClientProxy.handlerList; public class NEIConfig implements IConfigureNEI { - @Override public void loadConfig() { for (TemplateRecipeHandler handler: handlerList()) {