From 5d441defa7dd2e89f20820ca31c4a318482b7145 Mon Sep 17 00:00:00 2001 From: drcrazy Date: Wed, 13 Sep 2017 03:40:38 +0300 Subject: [PATCH] Update IndustrialElectrolyzer GUI to GuiBase. Closes #1272. Also started JEI refactoring --- .../client/gui/GuiIndustrialElectrolyzer.java | 75 ++++------ .../java/techreborn/client/gui/TRBuilder.java | 10 +- .../compat/jei/BaseRecipeWrapper.java | 4 +- .../compat/jei/TechRebornJeiPlugin.java | 130 +++++++++++------- .../IndustrialElectrolyzerRecipeCategory.java | 12 +- .../IndustrialElectrolyzerRecipeWrapper.java | 13 +- .../tiles/TileIndustrialElectrolyzer.java | 14 +- 7 files changed, 146 insertions(+), 112 deletions(-) diff --git a/src/main/java/techreborn/client/gui/GuiIndustrialElectrolyzer.java b/src/main/java/techreborn/client/gui/GuiIndustrialElectrolyzer.java index 03c671fe0..fe6df0f33 100644 --- a/src/main/java/techreborn/client/gui/GuiIndustrialElectrolyzer.java +++ b/src/main/java/techreborn/client/gui/GuiIndustrialElectrolyzer.java @@ -24,60 +24,41 @@ package techreborn.client.gui; -import net.minecraft.client.gui.inventory.GuiContainer; -import net.minecraft.client.renderer.GlStateManager; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.util.ResourceLocation; -import net.minecraft.client.resources.I18n; import techreborn.tiles.TileIndustrialElectrolyzer; -public class GuiIndustrialElectrolyzer extends GuiContainer { +public class GuiIndustrialElectrolyzer extends GuiBase { + + TileIndustrialElectrolyzer tile; - public static final ResourceLocation texture = new ResourceLocation("techreborn", - "textures/gui/industrial_electrolyzer.png"); - - TileIndustrialElectrolyzer eletrolyzer; - - public GuiIndustrialElectrolyzer(final EntityPlayer player, final TileIndustrialElectrolyzer tileeletrolyzer) { - super(tileeletrolyzer.createContainer(player)); - this.xSize = 176; - this.ySize = 167; - this.eletrolyzer = tileeletrolyzer; + public GuiIndustrialElectrolyzer(final EntityPlayer player, final TileIndustrialElectrolyzer tile) { + super(player, tile, tile.createContainer(player)); + this.tile = tile; } - + @Override - public void initGui() { - super.initGui(); - } + protected void drawGuiContainerBackgroundLayer(final float f, final int mouseX, final int mouseY) { + super.drawGuiContainerBackgroundLayer(f, mouseX, mouseY); + final GuiBase.Layer layer = GuiBase.Layer.BACKGROUND; + //Battery slot + this.drawSlot(8, 72, layer); + //Input slots + this.drawSlot(47, 72, layer); + this.drawSlot(81, 72, layer); + //Output slots + this.drawOutputSlotBar(50, 23, 4, layer); + this.builder.drawJEIButton(this, 150, 4, layer); + } + @Override - protected void drawGuiContainerBackgroundLayer(final float p_146976_1_, final int p_146976_2_, final int p_146976_3_) { - this.drawDefaultBackground(); - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - this.mc.getTextureManager().bindTexture(GuiIndustrialElectrolyzer.texture); - final int k = (this.width - this.xSize) / 2; - final int l = (this.height - this.ySize) / 2; - this.drawTexturedModalRect(k, l, 0, 0, this.xSize, this.ySize); + protected void drawGuiContainerForegroundLayer(final int mouseX, final int mouseY) { + super.drawGuiContainerForegroundLayer(mouseX, mouseY); + final GuiBase.Layer layer = GuiBase.Layer.FOREGROUND; - int j = 0; - - j = this.eletrolyzer.getProgressScaled(24); - if (j > 0) { - this.drawTexturedModalRect(k + 72, l + 38, 176, 14, j + 1, 16); - } - - j = this.eletrolyzer.getEnergyScaled(12); - if (j > 0) { - this.drawTexturedModalRect(k + 134, l + 36 + 12 - j, 176, 12 - j, 14, j + 2); - } + this.builder.drawProgressBar(this, this.tile.getProgressScaled(100), 100, 84, 52, mouseX, mouseY, TRBuilder.ProgressDirection.UP, layer); + this.builder.drawMultiEnergyBar(this, 9, 19, (int) this.tile.getEnergy(), (int) this.tile.getMaxPower(), mouseX, mouseY, 0, layer); } - - @Override - protected void drawGuiContainerForegroundLayer(final int p_146979_1_, final int p_146979_2_) { - final String name = I18n.format("tile.techreborn:industrial_electrolyzer.name"); - this.fontRenderer.drawString(name, this.xSize / 2 - this.fontRenderer.getStringWidth(name) / 2, 6, - 4210752); - this.fontRenderer.drawString(I18n.format("container.inventory", new Object[0]), 8, - this.ySize - 96 + 2, 4210752); - } -} + + +} \ No newline at end of file diff --git a/src/main/java/techreborn/client/gui/TRBuilder.java b/src/main/java/techreborn/client/gui/TRBuilder.java index c0280db24..4e9bd2eaa 100644 --- a/src/main/java/techreborn/client/gui/TRBuilder.java +++ b/src/main/java/techreborn/client/gui/TRBuilder.java @@ -111,6 +111,14 @@ public class TRBuilder extends GuiBuilder { j = 0; gui.drawTexturedModalRect(x + 16 - j, y, direction.xActive + 16 - j, direction.yActive, j, 10); } + + if (direction.equals(ProgressDirection.UP)) { + int j = (int) ((double) progress / (double) maxProgress * 16); + if (j < 0) + j = 0; + gui.drawTexturedModalRect(x, y + 16 - j, direction.xActive, direction.yActive + 16 - j, 10, j); + } + if (isInRect(x, y, direction.width, direction.height, mouseX, mouseY)) { int percentage = percentage(maxProgress, progress); @@ -379,7 +387,7 @@ public class TRBuilder extends GuiBuilder { } public enum ProgressDirection { - RIGHT(84, 151, 100, 151, 16, 10), LEFT(100, 161, 84, 161, 16, 10)/*, DOWN(104, 171, 114, 171, 10, 16), UP(84, 171, 94, 171, 10, 16)*/; + RIGHT(84, 151, 100, 151, 16, 10), LEFT(100, 161, 84, 161, 16, 10), DOWN(104, 171, 114, 171, 10, 16), UP(84, 171, 94, 171, 10, 16); public int x; public int y; public int xActive; diff --git a/src/main/java/techreborn/compat/jei/BaseRecipeWrapper.java b/src/main/java/techreborn/compat/jei/BaseRecipeWrapper.java index bae5a2ee5..6ab32c6c6 100644 --- a/src/main/java/techreborn/compat/jei/BaseRecipeWrapper.java +++ b/src/main/java/techreborn/compat/jei/BaseRecipeWrapper.java @@ -25,7 +25,7 @@ package techreborn.compat.jei; import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.recipe.BlankRecipeWrapper; +import mezz.jei.api.recipe.IRecipeWrapper; import net.minecraft.item.ItemStack; import net.minecraftforge.fluids.FluidStack; import net.minecraftforge.oredict.OreDictionary; @@ -34,7 +34,7 @@ import techreborn.api.recipe.BaseRecipe; import javax.annotation.Nonnull; import java.util.*; -public abstract class BaseRecipeWrapper extends BlankRecipeWrapper { +public abstract class BaseRecipeWrapper implements IRecipeWrapper { protected final T baseRecipe; @Nonnull private final List> inputs; diff --git a/src/main/java/techreborn/compat/jei/TechRebornJeiPlugin.java b/src/main/java/techreborn/compat/jei/TechRebornJeiPlugin.java index 840941b03..f697bc8c8 100644 --- a/src/main/java/techreborn/compat/jei/TechRebornJeiPlugin.java +++ b/src/main/java/techreborn/compat/jei/TechRebornJeiPlugin.java @@ -24,10 +24,11 @@ package techreborn.compat.jei; -import mezz.jei.api.BlankModPlugin; import mezz.jei.api.IGuiHelper; import mezz.jei.api.IJeiHelpers; +import mezz.jei.api.IModPlugin; import mezz.jei.api.IModRegistry; +import mezz.jei.api.recipe.IRecipeCategoryRegistration; import mezz.jei.api.recipe.VanillaRecipeCategoryUid; import mezz.jei.api.recipe.transfer.IRecipeTransferRegistry; import mezz.jei.config.Config; @@ -38,47 +39,60 @@ import reborncore.api.recipe.RecipeHandler; import techreborn.Core; import techreborn.api.generator.EFluidGenerator; import techreborn.api.generator.GeneratorRecipeHelper; +import techreborn.api.reactor.FusionReactorRecipe; import techreborn.api.reactor.FusionReactorRecipeHelper; +import techreborn.api.recipe.ScrapboxRecipe; +import techreborn.api.recipe.machines.AlloySmelterRecipe; import techreborn.api.recipe.machines.AssemblingMachineRecipe; +import techreborn.api.recipe.machines.BlastFurnaceRecipe; +import techreborn.api.recipe.machines.CentrifugeRecipe; +import techreborn.api.recipe.machines.ChemicalReactorRecipe; +import techreborn.api.recipe.machines.CompressorRecipe; +import techreborn.api.recipe.machines.ExtractorRecipe; +import techreborn.api.recipe.machines.GrinderRecipe; import techreborn.api.recipe.machines.ImplosionCompressorRecipe; +import techreborn.api.recipe.machines.IndustrialElectrolyzerRecipe; +import techreborn.api.recipe.machines.IndustrialGrinderRecipe; +import techreborn.api.recipe.machines.IndustrialSawmillRecipe; +import techreborn.api.recipe.machines.VacuumFreezerRecipe; import techreborn.blocks.cable.EnumCableType; import techreborn.client.gui.*; import techreborn.compat.CompatManager; import techreborn.compat.jei.alloySmelter.AlloySmelterRecipeCategory; -import techreborn.compat.jei.alloySmelter.AlloySmelterRecipeHandler; +import techreborn.compat.jei.alloySmelter.AlloySmelterRecipeWrapper; import techreborn.compat.jei.assemblingMachine.AssemblingMachineRecipeCategory; -import techreborn.compat.jei.assemblingMachine.AssemblingMachineRecipeHandler; +import techreborn.compat.jei.assemblingMachine.AssemblingMachineRecipeWrapper; import techreborn.compat.jei.blastFurnace.BlastFurnaceRecipeCategory; -import techreborn.compat.jei.blastFurnace.BlastFurnaceRecipeHandler; +import techreborn.compat.jei.blastFurnace.BlastFurnaceRecipeWrapper; import techreborn.compat.jei.centrifuge.CentrifugeRecipeCategory; -import techreborn.compat.jei.centrifuge.CentrifugeRecipeHandler; +import techreborn.compat.jei.centrifuge.CentrifugeRecipeWrapper; import techreborn.compat.jei.chemicalReactor.ChemicalReactorRecipeCategory; -import techreborn.compat.jei.chemicalReactor.ChemicalReactorRecipeHandler; +import techreborn.compat.jei.chemicalReactor.ChemicalReactorRecipeWrapper; import techreborn.compat.jei.compressor.CompressorRecipeCategory; -import techreborn.compat.jei.compressor.CompressorRecipeHandler; +import techreborn.compat.jei.compressor.CompressorRecipeWrapper; import techreborn.compat.jei.extractor.ExtractorRecipeCategory; -import techreborn.compat.jei.extractor.ExtractorRecipeHandler; +import techreborn.compat.jei.extractor.ExtractorRecipeWrapper; import techreborn.compat.jei.fusionReactor.FusionReactorRecipeCategory; -import techreborn.compat.jei.fusionReactor.FusionReactorRecipeHandler; +import techreborn.compat.jei.fusionReactor.FusionReactorRecipeWrapper; import techreborn.compat.jei.generators.fluid.FluidGeneratorRecipeCategory; import techreborn.compat.jei.generators.fluid.FluidGeneratorRecipeHandler; import techreborn.compat.jei.grinder.GrinderRecipeCategory; -import techreborn.compat.jei.grinder.GrinderRecipeHandler; +import techreborn.compat.jei.grinder.GrinderRecipeWrapper; import techreborn.compat.jei.implosionCompressor.ImplosionCompressorRecipeCategory; -import techreborn.compat.jei.implosionCompressor.ImplosionCompressorRecipeHandler; +import techreborn.compat.jei.implosionCompressor.ImplosionCompressorRecipeWrapper; import techreborn.compat.jei.industrialElectrolyzer.IndustrialElectrolyzerRecipeCategory; -import techreborn.compat.jei.industrialElectrolyzer.IndustrialElectrolyzerRecipeHandler; +import techreborn.compat.jei.industrialElectrolyzer.IndustrialElectrolyzerRecipeWrapper; import techreborn.compat.jei.industrialGrinder.IndustrialGrinderRecipeCategory; -import techreborn.compat.jei.industrialGrinder.IndustrialGrinderRecipeHandler; +import techreborn.compat.jei.industrialGrinder.IndustrialGrinderRecipeWrapper; import techreborn.compat.jei.industrialSawmill.IndustrialSawmillRecipeCategory; -import techreborn.compat.jei.industrialSawmill.IndustrialSawmillRecipeHandler; +import techreborn.compat.jei.industrialSawmill.IndustrialSawmillRecipeWrapper; import techreborn.compat.jei.rollingMachine.RollingMachineRecipeCategory; import techreborn.compat.jei.rollingMachine.RollingMachineRecipeHandler; import techreborn.compat.jei.rollingMachine.RollingMachineRecipeMaker; import techreborn.compat.jei.scrapbox.ScrapboxRecipeCategory; -import techreborn.compat.jei.scrapbox.ScrapboxRecipeHandler; +import techreborn.compat.jei.scrapbox.ScrapboxRecipeWrapper; import techreborn.compat.jei.vacuumFreezer.VacuumFreezerRecipeCategory; -import techreborn.compat.jei.vacuumFreezer.VacuumFreezerRecipeHandler; +import techreborn.compat.jei.vacuumFreezer.VacuumFreezerRecipeWrapper; import techreborn.dispenser.BehaviorDispenseScrapbox; import techreborn.init.IC2Duplicates; import techreborn.init.ModBlocks; @@ -91,7 +105,9 @@ import java.util.ArrayList; import java.util.List; @mezz.jei.api.JEIPlugin -public class TechRebornJeiPlugin extends BlankModPlugin { +public class TechRebornJeiPlugin implements IModPlugin { + + @SuppressWarnings("deprecation") private static void addDebugRecipes(final IModRegistry registry) { final ItemStack diamondBlock = new ItemStack(Blocks.DIAMOND_BLOCK); final ItemStack dirtBlock = new ItemStack(Blocks.DIRT); @@ -110,6 +126,38 @@ public class TechRebornJeiPlugin extends BlankModPlugin { } registry.addRecipes(debugRecipes); } + + @Override + public void registerCategories(IRecipeCategoryRegistration registry) { + final IJeiHelpers jeiHelpers = registry.getJeiHelpers(); + final IGuiHelper guiHelper = jeiHelpers.getGuiHelper(); + + registry.addRecipeCategories( + new AlloySmelterRecipeCategory(guiHelper), + new AssemblingMachineRecipeCategory(guiHelper), + new BlastFurnaceRecipeCategory(guiHelper), + new CentrifugeRecipeCategory(guiHelper), + new CompressorRecipeCategory(guiHelper), + new ChemicalReactorRecipeCategory(guiHelper), + new FusionReactorRecipeCategory(guiHelper), + new GrinderRecipeCategory(guiHelper), + new ImplosionCompressorRecipeCategory(guiHelper), + new IndustrialGrinderRecipeCategory(guiHelper), + new IndustrialElectrolyzerRecipeCategory(guiHelper), + new IndustrialSawmillRecipeCategory(guiHelper), + new RollingMachineRecipeCategory(guiHelper), + new ScrapboxRecipeCategory(guiHelper), + new VacuumFreezerRecipeCategory(guiHelper)); + + for (final EFluidGenerator type : EFluidGenerator.values()) + registry.addRecipeCategories(new FluidGeneratorRecipeCategory(type, guiHelper)); + + if (!IC2Duplicates.deduplicate()) { + registry.addRecipeCategories(new ExtractorRecipeCategory(guiHelper)); + } + + } + @Override public void register( @@ -117,8 +165,7 @@ public class TechRebornJeiPlugin extends BlankModPlugin { final IModRegistry registry) { final IJeiHelpers jeiHelpers = registry.getJeiHelpers(); - final IGuiHelper guiHelper = jeiHelpers.getGuiHelper(); - + jeiHelpers.getIngredientBlacklist().addIngredientToBlacklist(new ItemStack(ModFluids.BLOCK_BERYLLIUM)); jeiHelpers.getIngredientBlacklist().addIngredientToBlacklist(new ItemStack(ModFluids.BLOCK_CALCIUM)); jeiHelpers.getIngredientBlacklist().addIngredientToBlacklist(new ItemStack(ModFluids.BLOCK_CALCIUM_CARBONATE)); @@ -179,34 +226,26 @@ public class TechRebornJeiPlugin extends BlankModPlugin { } } - registry.addRecipeCategories(new AlloySmelterRecipeCategory(guiHelper), - new AssemblingMachineRecipeCategory(guiHelper), new BlastFurnaceRecipeCategory(guiHelper), - new CentrifugeRecipeCategory(guiHelper), new ChemicalReactorRecipeCategory(guiHelper), - new FusionReactorRecipeCategory(guiHelper), new IndustrialGrinderRecipeCategory(guiHelper), - new ImplosionCompressorRecipeCategory(guiHelper), new IndustrialElectrolyzerRecipeCategory(guiHelper), - new RollingMachineRecipeCategory(guiHelper), new VacuumFreezerRecipeCategory(guiHelper), - new GrinderRecipeCategory(guiHelper), - new CompressorRecipeCategory(guiHelper), new ScrapboxRecipeCategory(guiHelper), - new IndustrialSawmillRecipeCategory(guiHelper)); + registry.handleRecipes(AlloySmelterRecipe.class, recipe -> new AlloySmelterRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.ALLOY_SMELTER); + registry.handleRecipes(AssemblingMachineRecipe.class, recipe -> new AssemblingMachineRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.ASSEMBLING_MACHINE); + registry.handleRecipes(BlastFurnaceRecipe.class, recipe -> new BlastFurnaceRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.BLAST_FURNACE); + registry.handleRecipes(CentrifugeRecipe.class, recipe -> new CentrifugeRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.CENTRIFUGE); + registry.handleRecipes(ChemicalReactorRecipe.class, recipe -> new ChemicalReactorRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.CHEMICAL_REACTOR); + registry.handleRecipes(CompressorRecipe.class, recipe -> new CompressorRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.COMPRESSOR); + registry.handleRecipes(FusionReactorRecipe.class, FusionReactorRecipeWrapper::new, RecipeCategoryUids.FUSION_REACTOR); + registry.handleRecipes(GrinderRecipe.class, recipe -> new GrinderRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.GRINDER); + registry.handleRecipes(ImplosionCompressorRecipe.class, recipe -> new ImplosionCompressorRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.IMPLOSION_COMPRESSOR); + registry.handleRecipes(IndustrialElectrolyzerRecipe.class, recipe -> new IndustrialElectrolyzerRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.INDUSTRIAL_ELECTROLYZER); + registry.handleRecipes(IndustrialGrinderRecipe.class, recipe -> new IndustrialGrinderRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.INDUSTRIAL_GRINDER); + registry.handleRecipes(IndustrialSawmillRecipe.class, recipe -> new IndustrialSawmillRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.INDUSTRIAL_SAWMILL); + registry.handleRecipes(VacuumFreezerRecipe.class, recipe -> new VacuumFreezerRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.VACUUM_FREEZER); + registry.handleRecipes(ScrapboxRecipe.class, recipe -> new ScrapboxRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.SCRAPBOX); if (!IC2Duplicates.deduplicate()) { - registry.addRecipeCategories(new ExtractorRecipeCategory(guiHelper)); - registry.addRecipeHandlers(new ExtractorRecipeHandler(jeiHelpers)); + registry.handleRecipes(ExtractorRecipe.class, recipe -> new ExtractorRecipeWrapper(jeiHelpers, recipe), RecipeCategoryUids.EXTRACTOR); } - - for (final EFluidGenerator type : EFluidGenerator.values()) - registry.addRecipeCategories(new FluidGeneratorRecipeCategory(type, guiHelper)); - - registry.addRecipeHandlers(new AlloySmelterRecipeHandler(jeiHelpers), - new AssemblingMachineRecipeHandler(jeiHelpers), new BlastFurnaceRecipeHandler(jeiHelpers), - new CentrifugeRecipeHandler(jeiHelpers), new ChemicalReactorRecipeHandler(jeiHelpers), - new FusionReactorRecipeHandler(), new IndustrialGrinderRecipeHandler(jeiHelpers), - new ImplosionCompressorRecipeHandler(jeiHelpers), new IndustrialElectrolyzerRecipeHandler(jeiHelpers), - new RollingMachineRecipeHandler(), new VacuumFreezerRecipeHandler(jeiHelpers), - new GrinderRecipeHandler(jeiHelpers), - new CompressorRecipeHandler(jeiHelpers), new ScrapboxRecipeHandler(jeiHelpers), - new FluidGeneratorRecipeHandler(jeiHelpers), new IndustrialSawmillRecipeHandler(jeiHelpers)); - + + registry.addRecipeHandlers(new RollingMachineRecipeHandler(), new FluidGeneratorRecipeHandler(jeiHelpers)); registry.addRecipes(RecipeHandler.recipeList); registry.addRecipes(FusionReactorRecipeHelper.reactorRecipes); @@ -246,6 +285,7 @@ public class TechRebornJeiPlugin extends BlankModPlugin { registry.addRecipeClickArea(GuiChemicalReactor.class, 150, 4, 20, 12, RecipeCategoryUids.CHEMICAL_REACTOR); registry.addRecipeClickArea(GuiIndustrialGrinder.class, 150, 4, 20, 12, RecipeCategoryUids.INDUSTRIAL_GRINDER); registry.addRecipeClickArea(GuiIndustrialSawmill.class, 55, 35, 20, 15, RecipeCategoryUids.INDUSTRIAL_SAWMILL); + registry.addRecipeClickArea(GuiIndustrialElectrolyzer.class, 150, 4, 20, 12, RecipeCategoryUids.INDUSTRIAL_ELECTROLYZER); //OLD ONES registry.addRecipeClickArea(GuiAlloyFurnace.class, 80, 35, 26, 20, RecipeCategoryUids.ALLOY_SMELTER, @@ -255,8 +295,6 @@ public class TechRebornJeiPlugin extends BlankModPlugin { registry.addRecipeClickArea(GuiFusionReactor.class, 111, 34, 27, 19, RecipeCategoryUids.FUSION_REACTOR); registry.addRecipeClickArea(GuiImplosionCompressor.class, 150, 4, 20, 12, RecipeCategoryUids.IMPLOSION_COMPRESSOR); - registry.addRecipeClickArea(GuiIndustrialElectrolyzer.class, 72, 37, 33, 14, - RecipeCategoryUids.INDUSTRIAL_ELECTROLYZER); registry.addRecipeClickArea(GuiRollingMachine.class, 89, 32, 26, 25, RecipeCategoryUids.ROLLING_MACHINE); registry.addRecipeClickArea(GuiIronFurnace.class, 78, 36, 24, 16, VanillaRecipeCategoryUid.SMELTING, VanillaRecipeCategoryUid.FUEL); diff --git a/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java b/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java index b261f0151..2adf65cfc 100644 --- a/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java +++ b/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeCategory.java @@ -29,24 +29,28 @@ import mezz.jei.api.gui.IDrawable; import mezz.jei.api.gui.IGuiItemStackGroup; import mezz.jei.api.gui.IRecipeLayout; import mezz.jei.api.ingredients.IIngredients; -import mezz.jei.api.recipe.BlankRecipeCategory; +import mezz.jei.api.recipe.IRecipeCategory; +import net.minecraft.util.ResourceLocation; import net.minecraft.util.text.translation.I18n; -import techreborn.client.gui.GuiIndustrialElectrolyzer; import techreborn.compat.jei.RecipeCategoryUids; import techreborn.compat.jei.RecipeUtil; import techreborn.lib.ModInfo; import javax.annotation.Nonnull; -public class IndustrialElectrolyzerRecipeCategory extends BlankRecipeCategory { +@SuppressWarnings("deprecation") +public class IndustrialElectrolyzerRecipeCategory implements IRecipeCategory { private static final int[] INPUT_SLOTS = { 0, 1 }; private static final int[] OUTPUT_SLOTS = { 2, 3, 4, 5 }; private final IDrawable background; private final String title; + + private final ResourceLocation texture = new ResourceLocation("techreborn", + "textures/gui/industrial_electrolyzer.png"); public IndustrialElectrolyzerRecipeCategory(IGuiHelper guiHelper) { - background = guiHelper.createDrawable(GuiIndustrialElectrolyzer.texture, 49, 18, 78, 50); + background = guiHelper.createDrawable(texture, 49, 18, 78, 50); title = I18n.translateToLocal("tile.techreborn:industrial_electrolyzer.name"); } diff --git a/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeWrapper.java b/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeWrapper.java index 42bcd6d72..fad52317c 100644 --- a/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeWrapper.java +++ b/src/main/java/techreborn/compat/jei/industrialElectrolyzer/IndustrialElectrolyzerRecipeWrapper.java @@ -29,14 +29,17 @@ import mezz.jei.api.IJeiHelpers; import mezz.jei.api.gui.IDrawableAnimated; import mezz.jei.api.gui.IDrawableStatic; import net.minecraft.client.Minecraft; +import net.minecraft.util.ResourceLocation; +import reborncore.common.powerSystem.PowerSystem; import techreborn.api.recipe.machines.IndustrialElectrolyzerRecipe; -import techreborn.client.gui.GuiIndustrialElectrolyzer; import techreborn.compat.jei.BaseRecipeWrapper; import javax.annotation.Nonnull; public class IndustrialElectrolyzerRecipeWrapper extends BaseRecipeWrapper { private final IDrawableAnimated progress; + private final ResourceLocation texture = new ResourceLocation("techreborn", + "textures/gui/industrial_electrolyzer.png"); public IndustrialElectrolyzerRecipeWrapper( @Nonnull @@ -45,7 +48,7 @@ public class IndustrialElectrolyzerRecipeWrapper extends BaseRecipeWrapper ItemUtils.isItemEqual(stack, DynamicCell.getEmptyCell(1), true, true)) - .filterSlot(0, 80, 51, stack -> !ItemUtils.isItemEqual(stack, DynamicCell.getEmptyCell(1), true, true)) - .outputSlot(2, 50, 19).outputSlot(3, 70, 19).outputSlot(4, 90, 19).outputSlot(5, 110, 19) + .filterSlot(1, 47, 72, stack -> ItemUtils.isItemEqual(stack, DynamicCell.getEmptyCell(1), true, true)) + .filterSlot(0, 81, 72, stack -> !ItemUtils.isItemEqual(stack, DynamicCell.getEmptyCell(1), true, true)) + .outputSlot(2, 51, 24).outputSlot(3, 71, 24).outputSlot(4, 91, 24).outputSlot(5, 111, 24) .energySlot(6, 18, 51).syncEnergyValue().syncCrafterValue().addInventory().create(this); } }