hopefully a serverside crash fix

This commit is contained in:
70000hp 2024-04-21 11:02:54 -04:00
parent c66bd21fcc
commit c6eba58fa6
5 changed files with 77 additions and 113 deletions

View File

@ -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<TemplateRecipeHandler> handlerList() {
ArrayList<TemplateRecipeHandler> 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()) {

View File

@ -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<TemplateRecipeHandler> handlerList() {
ArrayList<TemplateRecipeHandler> 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;
}
}

View File

@ -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

View File

@ -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));

View File

@ -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) { }