aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/tileentities
diff options
context:
space:
mode:
authorDimach <dimach2142@gmail.com>2017-03-15 04:51:15 +0200
committerDimach <dimach2142@gmail.com>2017-03-15 04:51:15 +0200
commit76e82ed3553cedb2c9ebef4cf033472925e4caf1 (patch)
tree1bcf13a358936c672714c5eeb9622cae4c2283ff /src/main/java/gregtech/common/tileentities
parentd7203bccbde715d006783615c4c05a646d58ccaa (diff)
downloadGT5-Unofficial-76e82ed3553cedb2c9ebef4cf033472925e4caf1.tar.gz
GT5-Unofficial-76e82ed3553cedb2c9ebef4cf033472925e4caf1.tar.bz2
GT5-Unofficial-76e82ed3553cedb2c9ebef4cf033472925e4caf1.zip
Implement #292.
Diffstat (limited to 'src/main/java/gregtech/common/tileentities')
-rw-r--r--src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Regulator.java34
1 files changed, 32 insertions, 2 deletions
diff --git a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Regulator.java b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Regulator.java
index 3a89b8c82e..04930ae54b 100644
--- a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Regulator.java
+++ b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Regulator.java
@@ -18,9 +18,10 @@ import java.util.Arrays;
public class GT_MetaTileEntity_Regulator
extends GT_MetaTileEntity_Buffer {
public int[] mTargetSlots = {0, 0, 0, 0, 0, 0, 0, 0, 0};
+ private boolean charge = false, decharge = false;
public GT_MetaTileEntity_Regulator(int aID, String aName, String aNameRegional, int aTier) {
- super(aID, aName, aNameRegional, aTier, 19, "Regulating incoming Items");
+ super(aID, aName, aNameRegional, aTier, 20, "Regulating incoming Items");
}
public GT_MetaTileEntity_Regulator(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
@@ -36,7 +37,7 @@ public class GT_MetaTileEntity_Regulator
}
public boolean isValidSlot(int aIndex) {
- return aIndex < 9;
+ return aIndex < 9 || aIndex == 19;
}
public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
@@ -90,4 +91,33 @@ public class GT_MetaTileEntity_Regulator
public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
return (super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack)) && (GT_Utility.areStacksEqual(aStack, this.mInventory[(aIndex + 9)]));
}
+
+ @Override
+ public int rechargerSlotStartIndex() {
+ return 19;
+ }
+
+ @Override
+ public int dechargerSlotStartIndex() {
+ return 19;
+ }
+
+ @Override
+ public int rechargerSlotCount() {
+ return charge ? 1 : 0;
+ }
+
+ @Override
+ public int dechargerSlotCount() {
+ return decharge ? 1 : 0;
+ }
+
+ @Override
+ public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
+ super.onPostTick(aBaseMetaTileEntity, aTick);
+ if (aBaseMetaTileEntity.isServerSide()) {
+ charge = aBaseMetaTileEntity.getStoredEU() / 2 > aBaseMetaTileEntity.getEUCapacity() / 3;
+ decharge = aBaseMetaTileEntity.getStoredEU() < aBaseMetaTileEntity.getEUCapacity() / 3;
+ }
+ }
}