diff --git a/src/main/java/appeng/client/gui/implementations/GuiCraftingCPU.java b/src/main/java/appeng/client/gui/implementations/GuiCraftingCPU.java index c38c1e2a2..c7313782b 100644 --- a/src/main/java/appeng/client/gui/implementations/GuiCraftingCPU.java +++ b/src/main/java/appeng/client/gui/implementations/GuiCraftingCPU.java @@ -54,7 +54,7 @@ import java.util.List; import java.util.concurrent.TimeUnit; -public class GuiCraftingCPU extends AEBaseGui implements ISortSource +public class GuiCraftingCPU extends AEBaseGui implements ISortSource { private static final int GUI_HEIGHT = 184; private static final int GUI_WIDTH = 238; @@ -89,7 +89,7 @@ public class GuiCraftingCPU extends AEBaseGui implements I private Button cancel; private int tooltip = -1; - public GuiCraftingCPU(ContainerCraftingCPU container, PlayerInventory playerInventory, ITextComponent title) { + public GuiCraftingCPU(T container, PlayerInventory playerInventory, ITextComponent title) { super(container, playerInventory, title); this.ySize = GUI_HEIGHT; this.xSize = GUI_WIDTH; diff --git a/src/main/java/appeng/client/gui/implementations/GuiCraftingStatus.java b/src/main/java/appeng/client/gui/implementations/GuiCraftingStatus.java index 4a48e6d7e..958588201 100644 --- a/src/main/java/appeng/client/gui/implementations/GuiCraftingStatus.java +++ b/src/main/java/appeng/client/gui/implementations/GuiCraftingStatus.java @@ -35,18 +35,15 @@ import net.minecraft.util.text.ITextComponent; import java.io.IOException; -public class GuiCraftingStatus extends GuiCraftingCPU +public class GuiCraftingStatus extends GuiCraftingCPU { - private final ContainerCraftingStatus craftingStatus; - private final AESubGui subGui; private Button selectCPU; public GuiCraftingStatus(ContainerCraftingStatus container, PlayerInventory playerInventory, ITextComponent title) { super(container, playerInventory, title); - this.craftingStatus = container; this.subGui = new AESubGui(this, container.getTarget()); } @@ -76,20 +73,20 @@ public class GuiCraftingStatus extends GuiCraftingCPU { String btnTextText = GuiText.NoCraftingJobs.getLocal(); - if( this.craftingStatus.selectedCpu >= 0 )// && status.selectedCpu < status.cpus.size() ) + if( this.container.selectedCpu >= 0 )// && status.selectedCpu < status.cpus.size() ) { - if( this.craftingStatus.myName.length() > 0 ) + if( this.container.myName.length() > 0 ) { - final String name = this.craftingStatus.myName.substring( 0, Math.min( 20, this.craftingStatus.myName.length() ) ); + final String name = this.container.myName.substring( 0, Math.min( 20, this.container.myName.length() ) ); btnTextText = GuiText.CPUs.getLocal() + ": " + name; } else { - btnTextText = GuiText.CPUs.getLocal() + ": #" + this.craftingStatus.selectedCpu; + btnTextText = GuiText.CPUs.getLocal() + ": #" + this.container.selectedCpu; } } - if( this.craftingStatus.noCPU ) + if( this.container.noCPU ) { btnTextText = GuiText.NoCraftingJobs.getLocal(); } diff --git a/src/main/java/appeng/core/Registration.java b/src/main/java/appeng/core/Registration.java index db3b0b29d..a31744311 100644 --- a/src/main/java/appeng/core/Registration.java +++ b/src/main/java/appeng/core/Registration.java @@ -30,8 +30,42 @@ import appeng.api.networking.storage.IStorageGrid; import appeng.api.networking.ticking.ITickManager; import appeng.bootstrap.IModelRegistry; import appeng.bootstrap.components.*; +import appeng.client.gui.implementations.GuiCellWorkbench; +import appeng.client.gui.implementations.GuiChest; +import appeng.client.gui.implementations.GuiCondenser; +import appeng.client.gui.implementations.GuiCraftAmount; +import appeng.client.gui.implementations.GuiCraftConfirm; +import appeng.client.gui.implementations.GuiCraftingCPU; +import appeng.client.gui.implementations.GuiCraftingStatus; +import appeng.client.gui.implementations.GuiCraftingTerm; +import appeng.client.gui.implementations.GuiDrive; +import appeng.client.gui.implementations.GuiFormationPlane; import appeng.client.gui.implementations.GuiGrinder; +import appeng.client.gui.implementations.GuiGrinder; +import appeng.client.gui.implementations.GuiIOPort; +import appeng.client.gui.implementations.GuiInscriber; +import appeng.client.gui.implementations.GuiInterface; +import appeng.client.gui.implementations.GuiInterfaceTerminal; +import appeng.client.gui.implementations.GuiLevelEmitter; +import appeng.client.gui.implementations.GuiMAC; +import appeng.client.gui.implementations.GuiMEMonitorable; +import appeng.client.gui.implementations.GuiMEPortableCell; +import appeng.client.gui.implementations.GuiNetworkStatus; +import appeng.client.gui.implementations.GuiNetworkTool; +import appeng.client.gui.implementations.GuiPatternTerm; +import appeng.client.gui.implementations.GuiPriority; +import appeng.client.gui.implementations.GuiQNB; +import appeng.client.gui.implementations.GuiQNB; +import appeng.client.gui.implementations.GuiQuartzKnife; +import appeng.client.gui.implementations.GuiSecurityStation; import appeng.client.gui.implementations.GuiSkyChest; +import appeng.client.gui.implementations.GuiSkyChest; +import appeng.client.gui.implementations.GuiSpatialIOPort; +import appeng.client.gui.implementations.GuiStorageBus; +import appeng.client.gui.implementations.GuiUpgradeable; +import appeng.client.gui.implementations.GuiVibrationChamber; +import appeng.client.gui.implementations.GuiWireless; +import appeng.client.gui.implementations.GuiWirelessTerm; import appeng.client.render.effects.*; import appeng.client.render.model.SkyCompassModel; import appeng.client.render.tesr.SkyChestTESR; @@ -43,6 +77,7 @@ import appeng.core.features.registries.cell.BasicItemCellGuiHandler; import appeng.core.features.registries.cell.CreativeCellHandler; import appeng.core.stats.AeStats; import appeng.core.stats.PartItemPredicate; +import appeng.fluids.client.gui.*; import appeng.fluids.container.*; import appeng.fluids.registries.BasicFluidCellGuiHandler; import appeng.me.cache.*; @@ -491,8 +526,45 @@ final class Registration ); DistExecutor.runWhenOn(Dist.CLIENT, () -> () -> { - ScreenManager.registerFactory(ContainerSkyChest.TYPE, GuiSkyChest::new); ScreenManager.registerFactory(ContainerGrinder.TYPE, GuiGrinder::new); + ScreenManager.registerFactory(ContainerQNB.TYPE, GuiQNB::new); + ScreenManager.registerFactory(ContainerSkyChest.TYPE, GuiSkyChest::new); + ScreenManager.registerFactory(ContainerChest.TYPE, GuiChest::new); + ScreenManager.registerFactory(ContainerWireless.TYPE, GuiWireless::new); + ScreenManager.>registerFactory(ContainerMEMonitorable.TYPE, GuiMEMonitorable::new); + ScreenManager.registerFactory(ContainerMEPortableCell.TYPE, GuiMEPortableCell::new); + ScreenManager.registerFactory(ContainerWirelessTerm.TYPE, GuiWirelessTerm::new); + ScreenManager.registerFactory(ContainerNetworkStatus.TYPE, GuiNetworkStatus::new); + ScreenManager.>registerFactory(ContainerCraftingCPU.TYPE, GuiCraftingCPU::new); + ScreenManager.registerFactory(ContainerNetworkTool.TYPE, GuiNetworkTool::new); + ScreenManager.registerFactory(ContainerQuartzKnife.TYPE, GuiQuartzKnife::new); + ScreenManager.registerFactory(ContainerDrive.TYPE, GuiDrive::new); + ScreenManager.registerFactory(ContainerVibrationChamber.TYPE, GuiVibrationChamber::new); + ScreenManager.registerFactory(ContainerCondenser.TYPE, GuiCondenser::new); + ScreenManager.registerFactory(ContainerInterface.TYPE, GuiInterface::new); + ScreenManager.registerFactory(ContainerFluidInterface.TYPE, GuiFluidInterface::new); + ScreenManager.>registerFactory(ContainerUpgradeable.TYPE, GuiUpgradeable::new); + ScreenManager.registerFactory(ContainerFluidIO.TYPE, GuiFluidIO::new); + ScreenManager.registerFactory(ContainerIOPort.TYPE, GuiIOPort::new); + ScreenManager.registerFactory(ContainerStorageBus.TYPE, GuiStorageBus::new); + ScreenManager.registerFactory(ContainerFluidStorageBus.TYPE, GuiFluidStorageBus::new); + ScreenManager.registerFactory(ContainerFormationPlane.TYPE, GuiFormationPlane::new); + ScreenManager.registerFactory(ContainerFluidFormationPlane.TYPE, GuiFluidFormationPlane::new); + ScreenManager.registerFactory(ContainerPriority.TYPE, GuiPriority::new); + ScreenManager.registerFactory(ContainerSecurityStation.TYPE, GuiSecurityStation::new); + ScreenManager.registerFactory(ContainerCraftingTerm.TYPE, GuiCraftingTerm::new); + ScreenManager.registerFactory(ContainerPatternTerm.TYPE, GuiPatternTerm::new); + ScreenManager.registerFactory(ContainerFluidTerminal.TYPE, GuiFluidTerminal::new); + ScreenManager.registerFactory(ContainerLevelEmitter.TYPE, GuiLevelEmitter::new); + ScreenManager.registerFactory(ContainerFluidLevelEmitter.TYPE, GuiFluidLevelEmitter::new); + ScreenManager.registerFactory(ContainerSpatialIOPort.TYPE, GuiSpatialIOPort::new); + ScreenManager.registerFactory(ContainerInscriber.TYPE, GuiInscriber::new); + ScreenManager.registerFactory(ContainerCellWorkbench.TYPE, GuiCellWorkbench::new); + ScreenManager.registerFactory(ContainerMAC.TYPE, GuiMAC::new); + ScreenManager.registerFactory(ContainerCraftAmount.TYPE, GuiCraftAmount::new); + ScreenManager.registerFactory(ContainerCraftConfirm.TYPE, GuiCraftConfirm::new); + ScreenManager.registerFactory(ContainerInterfaceTerminal.TYPE, GuiInterfaceTerminal::new); + ScreenManager.registerFactory(ContainerCraftingStatus.TYPE, GuiCraftingStatus::new); }); } diff --git a/src/main/java/appeng/fluids/container/ContainerFluidTerminal.java b/src/main/java/appeng/fluids/container/ContainerFluidTerminal.java index 8570a03eb..4de5ce564 100644 --- a/src/main/java/appeng/fluids/container/ContainerFluidTerminal.java +++ b/src/main/java/appeng/fluids/container/ContainerFluidTerminal.java @@ -26,6 +26,7 @@ import javax.annotation.Nonnull; import appeng.api.config.*; import appeng.container.ContainerLocator; import appeng.container.helper.PartContainerHelper; +import appeng.container.helper.PartOrTileContainerHelper; import appeng.fluids.parts.PartFluidFormationPlane; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.PlayerInventory; @@ -81,12 +82,12 @@ import appeng.util.Platform; public class ContainerFluidTerminal extends AEBaseContainer implements IConfigManagerHost, IConfigurableObject, IMEMonitorHandlerReceiver { - public static ContainerType TYPE; + public static ContainerType TYPE; - private static final PartContainerHelper helper - = new PartContainerHelper<>(ContainerFluidFormationPlane::new, PartFluidFormationPlane.class, SecurityPermissions.BUILD); + private static final PartOrTileContainerHelper helper + = new PartOrTileContainerHelper<>(ContainerFluidTerminal::new, ITerminalHost.class, SecurityPermissions.BUILD); - public static ContainerFluidFormationPlane fromNetwork(int windowId, PlayerInventory inv, PacketBuffer buf) { + public static ContainerFluidTerminal fromNetwork(int windowId, PlayerInventory inv, PacketBuffer buf) { return helper.fromNetwork(windowId, inv, buf); } @@ -106,8 +107,8 @@ public class ContainerFluidTerminal extends AEBaseContainer implements IConfigMa // Holds the fluid the client wishes to extract, or null for insert private IAEFluidStack clientRequestedTargetFluid = null; - public ContainerFluidTerminal(ContainerType containerType, int id, PlayerInventory ip, ITerminalHost terminal) { - super(containerType, id, ip, terminal); + public ContainerFluidTerminal(int id, PlayerInventory ip, ITerminalHost terminal) { + super(TYPE, id, ip, terminal); this.terminal = terminal; this.clientCM = new ConfigManager( this );