aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java')
-rw-r--r--src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java262
1 files changed, 0 insertions, 262 deletions
diff --git a/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java b/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java
deleted file mode 100644
index 8873152137..0000000000
--- a/src/main/java/gregtech/api/gui/GT_GUIContainer_BasicMachine.java
+++ /dev/null
@@ -1,262 +0,0 @@
-package gregtech.api.gui;
-
-import static gregtech.api.enums.Mods.GregTech;
-
-import java.awt.Rectangle;
-
-import net.minecraft.entity.player.InventoryPlayer;
-import net.minecraft.util.StatCollector;
-
-import gregtech.api.enums.GT_Values;
-import gregtech.api.gui.widgets.GT_GuiIcon;
-import gregtech.api.gui.widgets.GT_GuiSlotTooltip;
-import gregtech.api.gui.widgets.GT_GuiSmartTooltip;
-import gregtech.api.gui.widgets.GT_GuiTabLine.GT_GuiTabIconSet;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine;
-import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachine_Steel;
-import gregtech.api.util.GT_Recipe.GT_Recipe_Map;
-import gregtech.common.power.Power;
-import gregtech.nei.NEI_TransferRectHost;
-
-/**
- * NEVER INCLUDE THIS FILE IN YOUR MOD!!!
- * <p/>
- * The GUI-Container I use for all my Basic Machines
- */
-public class GT_GUIContainer_BasicMachine extends GT_GUIContainerMetaTile_Machine implements NEI_TransferRectHost {
-
- private static final int NEEDS_STEAM_VENTING = 64;
- private static final GT_GuiTabIconSet TAB_ICONSET_BRONZE = new GT_GuiTabIconSet(
- GT_GuiIcon.TAB_NORMAL_BRONZE,
- GT_GuiIcon.TAB_HIGHLIGHT_BRONZE,
- GT_GuiIcon.TAB_DISABLED_BRONZE);
- private static final GT_GuiTabIconSet TAB_ICONSET_STEEL = new GT_GuiTabIconSet(
- GT_GuiIcon.TAB_NORMAL_STEEL,
- GT_GuiIcon.TAB_HIGHLIGHT_STEEL,
- GT_GuiIcon.TAB_DISABLED_STEEL);
- private final int textColor = this.getTextColorOrDefault("title", 0x404040);
- public final String mName, mNEI;
- public final byte mProgressBarDirection, mProgressBarAmount;
-
- // Tooltip localization keys
- private static final String BATTERY_SLOT_TOOLTIP = "GT5U.machines.battery_slot.tooltip",
- BATTERY_SLOT_TOOLTIP_ALT = "GT5U.machines.battery_slot.tooltip.alternative",
- UNUSED_SLOT_TOOLTIP = "GT5U.machines.unused_slot.tooltip",
- SPECIAL_SLOT_TOOLTIP = "GT5U.machines.special_slot.tooltip",
- FLUID_INPUT_TOOLTIP = "GT5U.machines.fluid_input_slot.tooltip",
- FLUID_OUTPUT_TOOLTIP = "GT5U.machines.fluid_output_slot.tooltip",
- STALLED_STUTTERING_TOOLTIP = "GT5U.machines.stalled_stuttering.tooltip",
- STALLED_VENT_TOOLTIP = "GT5U.machines.stalled_vent.tooltip",
- FLUID_TRANSFER_TOOLTIP = "GT5U.machines.fluid_transfer.tooltip",
- ITEM_TRANSFER_TOOLTIP = "GT5U.machines.item_transfer.tooltip", POWER_SOURCE_KEY = "GT5U.machines.powersource.";
-
- public GT_GUIContainer_BasicMachine(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName,
- String aTextureFile, String aNEI) {
- this(aInventoryPlayer, aTileEntity, aName, aTextureFile, aNEI, (byte) 0, (byte) 1);
- }
-
- public GT_GUIContainer_BasicMachine(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity, String aName,
- String aTextureFile, String aNEI, byte aProgressBarDirection, byte aProgressBarAmount) {
- super(
- new GT_Container_BasicMachine(aInventoryPlayer, aTileEntity),
- GregTech.getResourcePath("textures", "gui", "basicmachines", aTextureFile));
- mProgressBarDirection = aProgressBarDirection;
- mProgressBarAmount = (byte) Math.max(1, aProgressBarAmount);
- mName = aName;
- mNEI = aNEI;
- }
-
- /**
- * Load data for and create appropriate tooltips for this machine
- */
- @Override
- protected void setupTooltips() {
- super.setupTooltips();
- GT_MetaTileEntity_BasicMachine machine = getMachine();
- GT_Recipe_Map recipes = machine.getRecipeList();
- GT_Container_BasicMachine container = getContainer();
- Rectangle tProblemArea = new Rectangle(this.guiLeft + 79, this.guiTop + 44, 18, 18);
- String batterySlotTooltipKey;
- Object[] batterySlotTooltipArgs;
- if (machine.isSteampowered()) {
- batterySlotTooltipKey = UNUSED_SLOT_TOOLTIP;
- batterySlotTooltipArgs = new String[0];
- addToolTip(
- new GT_GuiSmartTooltip(
- tProblemArea,
- () -> hasErrorCode(NEEDS_STEAM_VENTING),
- mTooltipCache.getData(STALLED_VENT_TOOLTIP)));
- } else {
- String pTier1 = powerTierName(machine.mTier);
- if (machine.mTier == GT_Values.VN.length - 1) {
- batterySlotTooltipKey = BATTERY_SLOT_TOOLTIP_ALT;
- batterySlotTooltipArgs = new String[] { pTier1 };
- } else {
- batterySlotTooltipKey = BATTERY_SLOT_TOOLTIP;
- batterySlotTooltipArgs = new String[] { pTier1, powerTierName((byte) (machine.mTier + 1)) };
- }
- addToolTip(
- new GT_GuiSlotTooltip(
- container.slotFluidTransferToggle,
- mTooltipCache.getData(FLUID_TRANSFER_TOOLTIP)));
- addToolTip(
- new GT_GuiSlotTooltip(container.slotItemTransferToggle, mTooltipCache.getData(ITEM_TRANSFER_TOOLTIP)));
- }
- if (recipes != null && recipes.hasFluidInputs()) {
- addToolTip(
- new GT_GuiSlotTooltip(
- container.slotFluidInput,
- mTooltipCache.getData(FLUID_INPUT_TOOLTIP, machine.getCapacity())));
- }
- if (recipes != null && recipes.hasFluidOutputs()) {
- addToolTip(
- new GT_GuiSlotTooltip(
- container.slotFluidOutput,
- mTooltipCache.getData(FLUID_OUTPUT_TOOLTIP, machine.getCapacity())));
- }
- addToolTip(
- new GT_GuiSlotTooltip(
- getContainer().slotBattery,
- mTooltipCache.getData(batterySlotTooltipKey, batterySlotTooltipArgs)));
- addToolTip(
- new GT_GuiSlotTooltip(
- container.slotSpecial,
- mTooltipCache.getData(
- recipes != null && recipes.usesSpecialSlot() ? SPECIAL_SLOT_TOOLTIP : UNUSED_SLOT_TOOLTIP)));
- addToolTip(
- new GT_GuiSmartTooltip(
- tProblemArea,
- () -> container.mStuttering && !hasErrorCode(NEEDS_STEAM_VENTING),
- mTooltipCache.getData(
- STALLED_STUTTERING_TOOLTIP,
- StatCollector
- .translateToLocal(POWER_SOURCE_KEY + (machine.isSteampowered() ? "steam" : "power")))));
- }
-
- /**
- * Apply proper coloration to a machine's power tier short name
- *
- * @param machineTier machine tier
- * @return colored power tier short name
- */
- private String powerTierName(byte machineTier) {
- return GT_Values.TIER_COLORS[machineTier] + GT_Values.VN[machineTier];
- }
-
- private GT_MetaTileEntity_BasicMachine getMachine() {
- return (GT_MetaTileEntity_BasicMachine) mContainer.mTileEntity.getMetaTileEntity();
- }
-
- @Override
- protected void drawGuiContainerForegroundLayer(int mouseX, int mouseY) {
- super.drawGuiContainerForegroundLayer(mouseX, mouseY);
- fontRendererObj.drawString(mName, 8, 4, textColor);
- }
-
- @Override
- protected void drawGuiContainerBackgroundLayer(float parTicks, int mouseX, int mouseY) {
- super.drawGuiContainerBackgroundLayer(parTicks, mouseX, mouseY);
- int x = (width - xSize) / 2;
- int y = (height - ySize) / 2;
- drawTexturedModalRect(x, y, 0, 0, xSize, ySize);
- if (mContainer != null) {
- if (!getMachine().isSteampowered()) {
- if (getContainer().mFluidTransfer) drawTexturedModalRect(x + 7, y + 62, 176, 18, 18, 18);
- if (getContainer().mItemTransfer) drawTexturedModalRect(x + 25, y + 62, 176, 36, 18, 18);
- }
- if (getContainer().mStuttering) drawTexturedModalRect(x + 79, y + 44, 176, 54, 18, 18);
-
- if (mContainer.mMaxProgressTime > 0) {
- int tSize = mProgressBarDirection < 2 ? 20 : 18;
- int tProgress = Math.max(
- 1,
- Math.min(
- tSize * mProgressBarAmount,
- (mContainer.mProgressTime > 0 ? 1 : 0)
- + mContainer.mProgressTime * tSize * mProgressBarAmount / mContainer.mMaxProgressTime))
- % (tSize + 1);
-
- switch (mProgressBarDirection) { // yes, my OCD was mad at me before I did the Tabs.
- case 0 -> drawTexturedModalRect(x + 78, y + 24, 176, 0, tProgress, 18);
- case 1 -> drawTexturedModalRect(
- x + 78 + 20 - tProgress,
- y + 24,
- 176 + 20 - tProgress,
- 0,
- tProgress,
- 18);
- case 2 -> drawTexturedModalRect(x + 78, y + 24, 176, 0, 20, tProgress);
- case 3 -> drawTexturedModalRect(
- x + 78,
- y + 24 + 18 - tProgress,
- 176,
- 18 - tProgress,
- 20,
- tProgress);
- case 4 -> {
- tProgress = 20 - tProgress;
- drawTexturedModalRect(x + 78, y + 24, 176, 0, tProgress, 18);
- }
- case 5 -> {
- tProgress = 20 - tProgress;
- drawTexturedModalRect(x + 78 + 20 - tProgress, y + 24, 176 + 20 - tProgress, 0, tProgress, 18);
- }
- case 6 -> {
- tProgress = 18 - tProgress;
- drawTexturedModalRect(x + 78, y + 24, 176, 0, 20, tProgress);
- }
- case 7 -> {
- tProgress = 18 - tProgress;
- drawTexturedModalRect(x + 78, y + 24 + 18 - tProgress, 176, 18 - tProgress, 20, tProgress);
- }
- }
- }
- }
- }
-
- @Override
- protected GT_GuiTabIconSet getTabBackground() {
- if (getMachine().isSteampowered()) {
- return getMachine() instanceof GT_MetaTileEntity_BasicMachine_Steel ? TAB_ICONSET_STEEL
- : TAB_ICONSET_BRONZE;
- }
- return super.getTabBackground();
- }
-
- /**
- * Whether the machine currently has this error code
- */
- private boolean hasErrorCode(int errorCode) {
- return (getContainer().mDisplayErrorCode & errorCode) != 0;
- }
-
- private GT_Container_BasicMachine getContainer() {
- return (GT_Container_BasicMachine) mContainer;
- }
-
- @Override
- public String getNeiTransferRectString() {
- return mNEI;
- }
-
- @Override
- public String getNeiTransferRectTooltip() {
- Power powerInfo = getMachine().getPower();
- if (getMachine().isSteampowered()) {
- return powerInfo.getTierString() + " Steam recipes";
- } else {
- return "Recipes available in " + powerInfo.getTierString();
- }
- }
-
- @Override
- public Object[] getNeiTransferRectArgs() {
- return new Object[] { getMachine().getPower() };
- }
-
- @Override
- public Rectangle getNeiTransferRect() {
- return new Rectangle(65, 13, 36, 18);
- }
-}