aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api/gui')
-rw-r--r--src/main/java/gregtech/api/gui/GT_ContainerMetaTile_Machine.java28
-rw-r--r--src/main/java/gregtech/api/gui/GT_Container_BasicMachine.java5
-rw-r--r--src/main/java/gregtech/api/gui/GT_Container_BasicTank.java13
-rw-r--r--src/main/java/gregtech/api/gui/widgets/GT_GuiIconCheckButton.java12
4 files changed, 38 insertions, 20 deletions
diff --git a/src/main/java/gregtech/api/gui/GT_ContainerMetaTile_Machine.java b/src/main/java/gregtech/api/gui/GT_ContainerMetaTile_Machine.java
index 5903550a91..26b94a00e4 100644
--- a/src/main/java/gregtech/api/gui/GT_ContainerMetaTile_Machine.java
+++ b/src/main/java/gregtech/api/gui/GT_ContainerMetaTile_Machine.java
@@ -36,8 +36,8 @@ public class GT_ContainerMetaTile_Machine extends GT_Container {
oOutput = 0,
oInput = 0,
oID = 0,
- oDisplayErrorCode = 0,
- mTimer = 0;
+ oDisplayErrorCode = 0;
+ protected int mTimer = 0;
public GT_ContainerMetaTile_Machine(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
@@ -148,16 +148,16 @@ public class GT_ContainerMetaTile_Machine extends GT_Container {
super.updateProgressBar(par1, par2);
switch (par1) {
case 0:
- mEnergy = mEnergy & -65536 | par2;
+ mEnergy = mEnergy & 0xffff0000 | par2 & 0x0000ffff;
break;
case 1:
- mEnergy = mEnergy & 65535 | par2 << 16;
+ mEnergy = mEnergy & 0x0000ffff | par2 << 16;
break;
case 2:
- mStorage = mStorage & -65536 | par2;
+ mStorage = mStorage & 0xffff0000 | par2 & 0x0000ffff;
break;
case 3:
- mStorage = mStorage & 65535 | par2 << 16;
+ mStorage = mStorage & 0x0000ffff | par2 << 16;
break;
case 4:
mOutput = par2;
@@ -169,16 +169,16 @@ public class GT_ContainerMetaTile_Machine extends GT_Container {
mDisplayErrorCode = par2;
break;
case 11:
- mProgressTime = mProgressTime & -65536 | par2;
+ mProgressTime = mProgressTime & 0xffff0000 | par2;
break;
case 12:
- mProgressTime = mProgressTime & 65535 | par2 << 16;
+ mProgressTime = mProgressTime & 0x0000ffff | par2 << 16;
break;
case 13:
- mMaxProgressTime = mMaxProgressTime & -65536 | par2;
+ mMaxProgressTime = mMaxProgressTime & 0xffff0000 | par2 & 0x0000ffff;
break;
case 14:
- mMaxProgressTime = mMaxProgressTime & 65535 | par2 << 16;
+ mMaxProgressTime = mMaxProgressTime & 0x0000ffff | par2 << 16;
break;
case 15:
mID = par2;
@@ -187,16 +187,16 @@ public class GT_ContainerMetaTile_Machine extends GT_Container {
mActive = par2;
break;
case 17:
- mSteam = mSteam & -65536 | par2;
+ mSteam = mSteam & 0xffff0000 | par2 & 0x0000ffff;
break;
case 18:
- mSteam = mSteam & 65535 | par2 << 16;
+ mSteam = mSteam & 0x0000ffff | par2 << 16;
break;
case 19:
- mSteamStorage = mSteamStorage & -65536 | par2;
+ mSteamStorage = mSteamStorage & 0xffff0000 | par2 & 0x0000ffff;
break;
case 20:
- mSteamStorage = mSteamStorage & 65535 | par2 << 16;
+ mSteamStorage = mSteamStorage & 0x0000ffff | par2 << 16;
break;
}
}
diff --git a/src/main/java/gregtech/api/gui/GT_Container_BasicMachine.java b/src/main/java/gregtech/api/gui/GT_Container_BasicMachine.java
index 5d2a9321c4..fbae0b6752 100644
--- a/src/main/java/gregtech/api/gui/GT_Container_BasicMachine.java
+++ b/src/main/java/gregtech/api/gui/GT_Container_BasicMachine.java
@@ -204,7 +204,10 @@ public class GT_Container_BasicMachine extends GT_Container_BasicTank {
}
GT_MetaTileEntity_BasicTank tTank = (GT_MetaTileEntity_BasicTank) mTileEntity.getMetaTileEntity();
IFluidAccess tFillableAccess = IFluidAccess.from(tTank, true);
- return handleFluidSlotClick(tFillableAccess, aPlayer, aMouseclick == 0, true, true);
+ ItemStack tToken = handleFluidSlotClick(tFillableAccess, aPlayer, aMouseclick == 0, true, true);
+ if (mTileEntity.isServerSide() && tToken != null)
+ mTileEntity.markInventoryBeenModified();
+ return tToken;
} else {
return super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
}
diff --git a/src/main/java/gregtech/api/gui/GT_Container_BasicTank.java b/src/main/java/gregtech/api/gui/GT_Container_BasicTank.java
index 12878b6a04..e8810c14c0 100644
--- a/src/main/java/gregtech/api/gui/GT_Container_BasicTank.java
+++ b/src/main/java/gregtech/api/gui/GT_Container_BasicTank.java
@@ -22,6 +22,7 @@ import net.minecraftforge.fluids.IFluidContainerItem;
public class GT_Container_BasicTank extends GT_ContainerMetaTile_Machine {
public int mContent = 0;
+ private int oContent = 0;
public GT_Container_BasicTank(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
super(aInventoryPlayer, aTileEntity);
@@ -212,9 +213,13 @@ public class GT_Container_BasicTank extends GT_ContainerMetaTile_Machine {
mContent = 0;
for (Object crafter : this.crafters) {
ICrafting var1 = (ICrafting) crafter;
- var1.sendProgressBarUpdate(this, 100, mContent & 65535);
- var1.sendProgressBarUpdate(this, 101, mContent >>> 16);
+ if (mTimer % 500 == 0 || oContent != mContent) {
+ var1.sendProgressBarUpdate(this, 100, mContent & 65535);
+ var1.sendProgressBarUpdate(this, 101, mContent >>> 16);
+ }
}
+
+ oContent = mContent;
}
@Override
@@ -223,10 +228,10 @@ public class GT_Container_BasicTank extends GT_ContainerMetaTile_Machine {
super.updateProgressBar(par1, par2);
switch (par1) {
case 100:
- mContent = mContent & -65536 | par2;
+ mContent = mContent & 0xffff0000 | par2 & 0x0000ffff;
break;
case 101:
- mContent = mContent & 65535 | par2 << 16;
+ mContent = mContent & 0xffff | par2 << 16;
break;
}
}
diff --git a/src/main/java/gregtech/api/gui/widgets/GT_GuiIconCheckButton.java b/src/main/java/gregtech/api/gui/widgets/GT_GuiIconCheckButton.java
index 010ac78654..e7b6b9971d 100644
--- a/src/main/java/gregtech/api/gui/widgets/GT_GuiIconCheckButton.java
+++ b/src/main/java/gregtech/api/gui/widgets/GT_GuiIconCheckButton.java
@@ -3,13 +3,22 @@ package gregtech.api.gui.widgets;
import gregtech.api.interfaces.IGuiScreen;
public class GT_GuiIconCheckButton extends GT_GuiIconButton {
- private GT_GuiIcon checkedIcon, normalIcon;
+ private final GT_GuiIcon checkedIcon;
+ private final GT_GuiIcon normalIcon;
+ private final String checkedTooltip;
+ private final String normalTooltip;
private boolean checked = false;
public GT_GuiIconCheckButton(IGuiScreen gui, int id, int x, int y, GT_GuiIcon checkedIcon, GT_GuiIcon normalIcon) {
+ this(gui, id, x, y, checkedIcon, normalIcon, null, null);
+ }
+
+ public GT_GuiIconCheckButton(IGuiScreen gui, int id, int x, int y, GT_GuiIcon checkedIcon, GT_GuiIcon normalIcon, String checkedTooltip, String normalTooltip) {
super(gui, id, x, y, normalIcon);
this.checkedIcon = checkedIcon;
this.normalIcon = normalIcon;
+ this.checkedTooltip = checkedTooltip;
+ this.normalTooltip = normalTooltip;
}
@Override
@@ -27,6 +36,7 @@ public class GT_GuiIconCheckButton extends GT_GuiIconButton {
public void setChecked(boolean checked) {
super.setIcon(checked ? checkedIcon : normalIcon);
+ super.setTooltipText(checked ? checkedTooltip : normalTooltip);
this.checked = checked;
}
}