summaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/covers
diff options
context:
space:
mode:
authorFoghrye4 <foghrye4@gmail.com>2017-08-10 18:52:45 +0300
committerFoghrye4 <foghrye4@gmail.com>2017-08-10 18:52:45 +0300
commit0427ab89f1753a44b30cbc35ce021cbbdc845109 (patch)
treeabe418ff5ec174e712fe8dedd434548a945b15a3 /src/main/java/gregtech/common/covers
parent877312184c472d9845e5ef1008bc538f4634059f (diff)
fix missing source folder
Diffstat (limited to 'src/main/java/gregtech/common/covers')
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_Arm.java131
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_Blastproof.java33
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_ControlsWork.java101
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_Conveyor.java151
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_Crafting.java39
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_DoesWork.java110
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_Drain.java117
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_EUMeter.java154
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_EnergyOnly.java122
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java109
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_Lens.java27
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_LiquidMeter.java113
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java129
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java126
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_Pump.java205
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_RedstoneConductor.java100
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverExternal.java33
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverInternal.java32
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_RedstoneSignalizer.java96
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterExternal.java33
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java33
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_RedstoneWirelessBase.java113
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_Screen.java100
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_Shutter.java103
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_SolarPanel.java47
-rw-r--r--src/main/java/gregtech/common/covers/GT_Cover_Vent.java49
26 files changed, 2406 insertions, 0 deletions
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Arm.java b/src/main/java/gregtech/common/covers/GT_Cover_Arm.java
new file mode 100644
index 0000000..30bdce1
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_Arm.java
@@ -0,0 +1,131 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.interfaces.tileentity.IMachineProgress;
+/* 5: */ import gregtech.api.util.GT_CoverBehavior;
+/* 6: */ import gregtech.api.util.GT_Utility;
+/* 7: */ import net.minecraft.entity.player.EntityPlayer;
+/* 8: */ import net.minecraft.tileentity.TileEntity;
+/* 9: */ import net.minecraftforge.fluids.Fluid;
+/* 10: */
+/* 11: */ public class GT_Cover_Arm
+/* 12: */ extends GT_CoverBehavior
+/* 13: */ {
+/* 14: */ public final int mTickRate;
+/* 15: */
+/* 16: */ public GT_Cover_Arm(int aTickRate)
+/* 17: */ {
+/* 18:16 */ this.mTickRate = aTickRate;
+/* 19: */ }
+/* 20: */
+/* 21: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 22: */ {
+/* 23:21 */ if ((aCoverVariable == 0) || (((aTileEntity instanceof IMachineProgress)) && (!((IMachineProgress)aTileEntity).isAllowedToWork()))) {
+/* 24:21 */ return aCoverVariable;
+/* 25: */ }
+/* 26:22 */ TileEntity tTileEntity = aTileEntity.getTileEntityAtSide(aSide);
+/* 27:23 */ aTileEntity.decreaseStoredEnergyUnits(1L, true);
+/* 28:24 */ if (aTileEntity.getUniversalEnergyCapacity() >= 128L)
+/* 29: */ {
+/* 30:25 */ if (aTileEntity.isUniversalEnergyStored(256L)) {
+/* 31:26 */ aTileEntity.decreaseStoredEnergyUnits(4 * GT_Utility.moveOneItemStackIntoSlot(aCoverVariable > 0 ? aTileEntity : tTileEntity, aCoverVariable > 0 ? tTileEntity : aTileEntity, aCoverVariable > 0 ? aSide : GT_Utility.getOppositeSide(aSide), Math.abs(aCoverVariable) - 1, null, false, (byte)64, (byte)1, (byte)64, (byte)1), true);
+/* 32: */ }
+/* 33: */ }
+/* 34: */ else {
+/* 35:29 */ GT_Utility.moveOneItemStackIntoSlot(aCoverVariable > 0 ? aTileEntity : tTileEntity, aCoverVariable > 0 ? tTileEntity : aTileEntity, aCoverVariable > 0 ? aSide : GT_Utility.getOppositeSide(aSide), Math.abs(aCoverVariable) - 1, null, false, (byte)64, (byte)1, (byte)64, (byte)1);
+/* 36: */ }
+/* 37:31 */ return aCoverVariable;
+/* 38: */ }
+/* 39: */
+/* 40: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 41: */ {
+/* 42:36 */ if (GT_Utility.getClickedFacingCoords(aSide, aX, aY, aZ)[0] >= 0.5F) {
+/* 43:36 */ aCoverVariable += 16;
+/* 44: */ } else {
+/* 45:36 */ aCoverVariable -= 16;
+/* 46: */ }
+/* 47:37 */ GT_Utility.sendChatToPlayer(aPlayer, (aCoverVariable > 0 ? "Puts out into adjacent Slot #" : "Grabs in for own Slot #") + (Math.abs(aCoverVariable) - 1));
+/* 48:38 */ return aCoverVariable;
+/* 49: */ }
+/* 50: */
+/* 51: */ @Override
+public boolean onCoverRightclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 52: */ {
+/* 53:43 */ if (GT_Utility.getClickedFacingCoords(aSide, aX, aY, aZ)[0] >= 0.5F) {
+/* 54:43 */ aCoverVariable++;
+/* 55: */ } else {
+/* 56:43 */ aCoverVariable--;
+/* 57: */ }
+/* 58:44 */ GT_Utility.sendChatToPlayer(aPlayer, (aCoverVariable > 0 ? "Puts out into adjacent Slot #" : "Grabs in for own Slot #") + (Math.abs(aCoverVariable) - 1));
+/* 59:45 */ aTileEntity.setCoverDataAtSide(aSide, aCoverVariable);
+/* 60:46 */ return true;
+/* 61: */ }
+/* 62: */
+/* 63: */ @Override
+public boolean letsRedstoneGoIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 64: */ {
+/* 65:51 */ return true;
+/* 66: */ }
+/* 67: */
+/* 68: */ @Override
+public boolean letsRedstoneGoOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 69: */ {
+/* 70:56 */ return true;
+/* 71: */ }
+/* 72: */
+/* 73: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 74: */ {
+/* 75:61 */ return true;
+/* 76: */ }
+/* 77: */
+/* 78: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 79: */ {
+/* 80:66 */ return true;
+/* 81: */ }
+/* 82: */
+/* 83: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 84: */ {
+/* 85:71 */ return true;
+/* 86: */ }
+/* 87: */
+/* 88: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 89: */ {
+/* 90:76 */ return true;
+/* 91: */ }
+/* 92: */
+/* 93: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 94: */ {
+/* 95:81 */ return true;
+/* 96: */ }
+/* 97: */
+/* 98: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 99: */ {
+/* :0:86 */ return true;
+/* :1: */ }
+/* :2: */
+/* :3: */ @Override
+public boolean alwaysLookConnected(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* :4: */ {
+/* :5:91 */ return true;
+/* :6: */ }
+/* :7: */
+/* :8: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* :9: */ {
+/* ;0:96 */ return this.mTickRate;
+/* ;1: */ }
+/* ;2: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_Arm
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Blastproof.java b/src/main/java/gregtech/common/covers/GT_Cover_Blastproof.java
new file mode 100644
index 0000000..83e8761
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_Blastproof.java
@@ -0,0 +1,33 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.util.GT_CoverBehavior;
+/* 5: */
+/* 6: */ public class GT_Cover_Blastproof
+/* 7: */ extends GT_CoverBehavior
+/* 8: */ {
+/* 9: */ private final float mLevel;
+/* 10: */
+/* 11: */ public GT_Cover_Blastproof(float aLevel)
+/* 12: */ {
+/* 13:11 */ this.mLevel = aLevel;
+/* 14: */ }
+/* 15: */
+/* 16: */ @Override
+public float getBlastProofLevel(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 17: */ {
+/* 18:16 */ return this.mLevel;
+/* 19: */ }
+/* 20: */
+/* 21: */ @Override
+public boolean isSimpleCover()
+/* 22: */ {
+/* 23:21 */ return true;
+/* 24: */ }
+/* 25: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_Blastproof
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_ControlsWork.java b/src/main/java/gregtech/common/covers/GT_Cover_ControlsWork.java
new file mode 100644
index 0000000..b639620
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_ControlsWork.java
@@ -0,0 +1,101 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.interfaces.tileentity.IMachineProgress;
+/* 5: */ import gregtech.api.util.GT_CoverBehavior;
+/* 6: */ import gregtech.api.util.GT_Utility;
+/* 7: */ import net.minecraft.entity.player.EntityPlayer;
+/* 8: */ import net.minecraftforge.fluids.Fluid;
+/* 9: */
+/* 10: */ public class GT_Cover_ControlsWork
+/* 11: */ extends GT_CoverBehavior
+/* 12: */ {
+/* 13: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 14: */ {
+ if(aTileEntity instanceof IMachineProgress)
+ {
+ if((aInputRedstone > 0) == (aCoverVariable == 0) && aCoverVariable != 2)
+ ((IMachineProgress)aTileEntity).enableWorking();
+ else
+ ((IMachineProgress)aTileEntity).disableWorking();
+ ((IMachineProgress)aTileEntity).setWorkDataValue(aInputRedstone);
+ }
+ return aCoverVariable;
+}
+/* 30: */
+/* 31: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 32: */ {
+/* 33:22 */ return true;
+/* 34: */ }
+/* 35: */
+/* 36: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 37: */ {
+/* 38:27 */ return true;
+/* 39: */ }
+/* 40: */
+/* 41: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 42: */ {
+/* 43:32 */ return true;
+/* 44: */ }
+/* 45: */
+/* 46: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 47: */ {
+/* 48:37 */ return true;
+/* 49: */ }
+/* 50: */
+/* 51: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 52: */ {
+/* 53:42 */ return true;
+/* 54: */ }
+/* 55: */
+/* 56: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 57: */ {
+/* 58:47 */ return true;
+/* 59: */ }
+/* 60: */
+/* 61: */ @Override
+public boolean onCoverRemoval(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, boolean aForced)
+/* 62: */ {
+/* 63:52 */ if ((aTileEntity instanceof IMachineProgress))
+/* 64: */ {
+/* 65:53 */ ((IMachineProgress)aTileEntity).enableWorking();
+/* 66:54 */ ((IMachineProgress)aTileEntity).setWorkDataValue((byte)0);
+/* 67: */ }
+/* 68:56 */ return true;
+/* 69: */ }
+/* 70: */
+/* 71: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 72: */ {
+/* 73:61 */ aCoverVariable = (aCoverVariable + 1) % 3;
+/* 74:62 */ if (aCoverVariable == 0) {
+/* 75:62 */ GT_Utility.sendChatToPlayer(aPlayer, "Normal");
+/* 76: */ }
+/* 77:63 */ if (aCoverVariable == 1) {
+/* 78:63 */ GT_Utility.sendChatToPlayer(aPlayer, "Inverted");
+/* 79: */ }
+/* 80:64 */ if (aCoverVariable == 2) {
+/* 81:64 */ GT_Utility.sendChatToPlayer(aPlayer, "No Work at all");
+/* 82: */ }
+/* 83:65 */ return aCoverVariable;
+/* 84: */ }
+/* 85: */
+/* 86: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 87: */ {
+/* 88:70 */ return 1;
+/* 89: */ }
+/* 90: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_ControlsWork
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Conveyor.java b/src/main/java/gregtech/common/covers/GT_Cover_Conveyor.java
new file mode 100644
index 0000000..86363ea
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_Conveyor.java
@@ -0,0 +1,151 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.interfaces.tileentity.IMachineProgress;
+/* 5: */ import gregtech.api.util.GT_CoverBehavior;
+/* 6: */ import gregtech.api.util.GT_Utility;
+/* 7: */ import net.minecraft.entity.player.EntityPlayer;
+/* 8: */ import net.minecraft.tileentity.TileEntity;
+/* 9: */ import net.minecraftforge.fluids.Fluid;
+/* 10: */
+/* 11: */ public class GT_Cover_Conveyor
+/* 12: */ extends GT_CoverBehavior
+/* 13: */ {
+/* 14: */ public final int mTickRate;
+/* 15: */
+/* 16: */ public GT_Cover_Conveyor(int aTickRate)
+/* 17: */ {
+/* 18:16 */ this.mTickRate = aTickRate;
+/* 19: */ }
+/* 20: */
+/* 21: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 22: */ {
+/* 23:21 */ if ((aCoverVariable % 6 > 1) && ((aTileEntity instanceof IMachineProgress))) {
+/* 24:21 */ if (((IMachineProgress)aTileEntity).isAllowedToWork() != aCoverVariable % 6 < 4) {
+/* 25:21 */ return aCoverVariable;
+/* 26: */ }
+/* 27: */ }
+/* 28:22 */ TileEntity tTileEntity = aTileEntity.getTileEntityAtSide(aSide);
+/* 29:23 */ aTileEntity.decreaseStoredEnergyUnits(1L, true);
+/* 30:24 */ if (((aCoverVariable % 2 != 1) || (aSide != 1)) && ((aCoverVariable % 2 != 0) || (aSide != 0)) && (aTileEntity.getUniversalEnergyCapacity() >= 128L))
+/* 31: */ {
+/* 32:25 */ if (aTileEntity.isUniversalEnergyStored(256L)) {
+/* 33:26 */ aTileEntity.decreaseStoredEnergyUnits(4 * GT_Utility.moveOneItemStack(aCoverVariable % 2 == 0 ? aTileEntity : tTileEntity, aCoverVariable % 2 != 0 ? aTileEntity : tTileEntity, aCoverVariable % 2 != 0 ? GT_Utility.getOppositeSide(aSide) : aSide, aCoverVariable % 2 == 0 ? GT_Utility.getOppositeSide(aSide) : aSide, null, false, (byte)64, (byte)1, (byte)64, (byte)1), true);
+/* 34: */ }
+/* 35: */ }
+/* 36: */ else {
+/* 37:29 */ GT_Utility.moveOneItemStack(aCoverVariable % 2 == 0 ? aTileEntity : tTileEntity, aCoverVariable % 2 != 0 ? aTileEntity : tTileEntity, aCoverVariable % 2 != 0 ? GT_Utility.getOppositeSide(aSide) : aSide, aCoverVariable % 2 == 0 ? GT_Utility.getOppositeSide(aSide) : aSide, null, false, (byte)64, (byte)1, (byte)64, (byte)1);
+/* 38: */ }
+/* 39:31 */ return aCoverVariable;
+/* 40: */ }
+/* 41: */
+/* 42: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 43: */ {
+/* 44:36 */ aCoverVariable = (aCoverVariable + 1) % 12;
+/* 45:37 */ if (aCoverVariable == 0) {
+/* 46:37 */ GT_Utility.sendChatToPlayer(aPlayer, "Export");
+/* 47: */ }
+/* 48:38 */ if (aCoverVariable == 1) {
+/* 49:38 */ GT_Utility.sendChatToPlayer(aPlayer, "Import");
+/* 50: */ }
+/* 51:39 */ if (aCoverVariable == 2) {
+/* 52:39 */ GT_Utility.sendChatToPlayer(aPlayer, "Export (conditional)");
+/* 53: */ }
+/* 54:40 */ if (aCoverVariable == 3) {
+/* 55:40 */ GT_Utility.sendChatToPlayer(aPlayer, "Import (conditional)");
+/* 56: */ }
+/* 57:41 */ if (aCoverVariable == 4) {
+/* 58:41 */ GT_Utility.sendChatToPlayer(aPlayer, "Export (invert cond)");
+/* 59: */ }
+/* 60:42 */ if (aCoverVariable == 5) {
+/* 61:42 */ GT_Utility.sendChatToPlayer(aPlayer, "Import (invert cond)");
+/* 62: */ }
+/* 63:43 */ if (aCoverVariable == 6) {
+/* 64:43 */ GT_Utility.sendChatToPlayer(aPlayer, "Export allow Input");
+/* 65: */ }
+/* 66:44 */ if (aCoverVariable == 7) {
+/* 67:44 */ GT_Utility.sendChatToPlayer(aPlayer, "Import allow Output");
+/* 68: */ }
+/* 69:45 */ if (aCoverVariable == 8) {
+/* 70:45 */ GT_Utility.sendChatToPlayer(aPlayer, "Export allow Input (conditional)");
+/* 71: */ }
+/* 72:46 */ if (aCoverVariable == 9) {
+/* 73:46 */ GT_Utility.sendChatToPlayer(aPlayer, "Import allow Output (conditional)");
+/* 74: */ }
+/* 75:47 */ if (aCoverVariable == 10) {
+/* 76:47 */ GT_Utility.sendChatToPlayer(aPlayer, "Export allow Input (invert cond)");
+/* 77: */ }
+/* 78:48 */ if (aCoverVariable == 11) {
+/* 79:48 */ GT_Utility.sendChatToPlayer(aPlayer, "Import allow Output (invert cond)");
+/* 80: */ }
+/* 81:49 */ return aCoverVariable;
+/* 82: */ }
+/* 83: */
+/* 84: */ @Override
+public boolean letsRedstoneGoIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 85: */ {
+/* 86:54 */ return true;
+/* 87: */ }
+/* 88: */
+/* 89: */ @Override
+public boolean letsRedstoneGoOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 90: */ {
+/* 91:59 */ return true;
+/* 92: */ }
+/* 93: */
+/* 94: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 95: */ {
+/* 96:64 */ return true;
+/* 97: */ }
+/* 98: */
+/* 99: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* :0: */ {
+/* :1:69 */ return true;
+/* :2: */ }
+/* :3: */
+/* :4: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* :5: */ {
+/* :6:74 */ return true;
+/* :7: */ }
+/* :8: */
+/* :9: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* ;0: */ {
+/* ;1:79 */ return true;
+/* ;2: */ }
+/* ;3: */
+/* ;4: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* ;5: */ {
+/* ;6:84 */ return (aCoverVariable >= 6) || (aCoverVariable % 2 != 0);
+/* ;7: */ }
+/* ;8: */
+/* ;9: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* <0: */ {
+/* <1:89 */ return (aCoverVariable >= 6) || (aCoverVariable % 2 == 0);
+/* <2: */ }
+/* <3: */
+/* <4: */ @Override
+public boolean alwaysLookConnected(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* <5: */ {
+/* <6:94 */ return true;
+/* <7: */ }
+/* <8: */
+/* <9: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* =0: */ {
+/* =1:99 */ return this.mTickRate;
+/* =2: */ }
+/* =3: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_Conveyor
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Crafting.java b/src/main/java/gregtech/common/covers/GT_Cover_Crafting.java
new file mode 100644
index 0000000..c877761
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_Crafting.java
@@ -0,0 +1,39 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.util.GT_CoverBehavior;
+/* 5: */ import net.minecraft.entity.player.EntityPlayer;
+/* 6: */ import net.minecraft.entity.player.EntityPlayerMP;
+/* 9: */ import net.minecraft.inventory.ContainerWorkbench;
+/* 11: */ import net.minecraft.network.play.server.S2DPacketOpenWindow;
+/* 13: */
+/* 14: */ public class GT_Cover_Crafting
+/* 15: */ extends GT_CoverBehavior
+/* 16: */ {
+/* 17: */ @Override
+public boolean onCoverRightclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 18: */ {
+/* 19:13 */ if ((aPlayer instanceof EntityPlayerMP))
+/* 20: */ {
+/* 21:14 */ ((EntityPlayerMP)aPlayer).getNextWindowId();
+/* 22:15 */ ((EntityPlayerMP)aPlayer).playerNetServerHandler.sendPacket(new S2DPacketOpenWindow(((EntityPlayerMP)aPlayer).currentWindowId, 1, "Crafting", 9, true));
+/* 23:16 */ ((EntityPlayerMP)aPlayer).openContainer = new ContainerWorkbench(((EntityPlayerMP)aPlayer).inventory, ((EntityPlayerMP)aPlayer).worldObj, aTileEntity.getXCoord(), aTileEntity.getYCoord(), aTileEntity.getZCoord())
+/* 24: */ {
+/* 25: */ @Override
+public boolean canInteractWith(EntityPlayer par1EntityPlayer)
+/* 26: */ {
+/* 27:19 */ return true;
+/* 28: */ }
+/* 29:21 */ };
+/* 30:22 */ ((EntityPlayerMP)aPlayer).openContainer.windowId = ((EntityPlayerMP)aPlayer).currentWindowId;
+/* 31:23 */ ((EntityPlayerMP)aPlayer).openContainer.addCraftingToCrafters((EntityPlayerMP)aPlayer);
+/* 32: */ }
+/* 33:25 */ return true;
+/* 34: */ }
+/* 35: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_Crafting
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_DoesWork.java b/src/main/java/gregtech/common/covers/GT_Cover_DoesWork.java
new file mode 100644
index 0000000..9d56f5a
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_DoesWork.java
@@ -0,0 +1,110 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.interfaces.tileentity.IMachineProgress;
+/* 5: */ import gregtech.api.util.GT_CoverBehavior;
+/* 6: */ import gregtech.api.util.GT_Utility;
+/* 7: */ import net.minecraft.entity.player.EntityPlayer;
+/* 8: */ import net.minecraftforge.fluids.Fluid;
+/* 9: */
+/* 10: */ public class GT_Cover_DoesWork
+/* 11: */ extends GT_CoverBehavior
+/* 12: */ {
+/* 13: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 14: */ {
+/* 15:13 */ if ((aTileEntity instanceof IMachineProgress))
+/* 16: */ {
+/* 17:14 */ if (aCoverVariable < 2)
+/* 18: */ {
+/* 19:15 */ int tScale = ((IMachineProgress)aTileEntity).getMaxProgress() / 15;
+/* 20:16 */ if ((tScale > 0) && (((IMachineProgress)aTileEntity).hasThingsToDo())) {
+/* 21:17 */ aTileEntity.setOutputRedstoneSignal(aSide, aCoverVariable % 2 == 0 ? (byte)(((IMachineProgress)aTileEntity).getProgress() / tScale) : (byte)(15 - ((IMachineProgress)aTileEntity).getProgress() / tScale));
+/* 22: */ } else {
+/* 23:19 */ aTileEntity.setOutputRedstoneSignal(aSide, (byte)(aCoverVariable % 2 == 0 ? 0 : 15));
+/* 24: */ }
+/* 25: */ }
+/* 26: */ else
+/* 27: */ {
+/* 28:22 */ aTileEntity.setOutputRedstoneSignal(aSide, (byte)((aCoverVariable % 2 == 0 ? 1 : 0) != (((IMachineProgress)aTileEntity).getMaxProgress() == 0 ? 1 : 0) ? 0 : 15));
+/* 29: */ }
+/* 30: */ }
+/* 31: */ else {
+/* 32:25 */ aTileEntity.setOutputRedstoneSignal(aSide, (byte)0);
+/* 33: */ }
+/* 34:27 */ return aCoverVariable;
+/* 35: */ }
+/* 36: */
+/* 37: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 38: */ {
+/* 39:32 */ aCoverVariable = (aCoverVariable + 1) % 4;
+/* 40:33 */ if (aCoverVariable == 0) {
+/* 41:33 */ GT_Utility.sendChatToPlayer(aPlayer, "Normal");
+/* 42: */ }
+/* 43:34 */ if (aCoverVariable == 1) {
+/* 44:34 */ GT_Utility.sendChatToPlayer(aPlayer, "Inverted");
+/* 45: */ }
+/* 46:35 */ if (aCoverVariable == 2) {
+/* 47:35 */ GT_Utility.sendChatToPlayer(aPlayer, "Ready to work");
+/* 48: */ }
+/* 49:36 */ if (aCoverVariable == 3) {
+/* 50:36 */ GT_Utility.sendChatToPlayer(aPlayer, "Not ready to work");
+/* 51: */ }
+/* 52:37 */ return aCoverVariable;
+/* 53: */ }
+/* 54: */
+/* 55: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 56: */ {
+/* 57:42 */ return true;
+/* 58: */ }
+/* 59: */
+/* 60: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 61: */ {
+/* 62:47 */ return true;
+/* 63: */ }
+/* 64: */
+/* 65: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 66: */ {
+/* 67:52 */ return true;
+/* 68: */ }
+/* 69: */
+/* 70: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 71: */ {
+/* 72:57 */ return true;
+/* 73: */ }
+/* 74: */
+/* 75: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 76: */ {
+/* 77:62 */ return true;
+/* 78: */ }
+/* 79: */
+/* 80: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 81: */ {
+/* 82:67 */ return true;
+/* 83: */ }
+/* 84: */
+/* 85: */ @Override
+public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 86: */ {
+/* 87:72 */ return true;
+/* 88: */ }
+/* 89: */
+/* 90: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 91: */ {
+/* 92:77 */ return 5;
+/* 93: */ }
+/* 94: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_DoesWork
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Drain.java b/src/main/java/gregtech/common/covers/GT_Cover_Drain.java
new file mode 100644
index 0000000..bc89a85
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_Drain.java
@@ -0,0 +1,117 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.enums.Materials;
+/* 4: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 5: */ import gregtech.api.interfaces.tileentity.IMachineProgress;
+/* 6: */ import gregtech.api.util.GT_CoverBehavior;
+/* 7: */ import gregtech.api.util.GT_Utility;
+/* 8: */ import net.minecraft.block.Block;
+/* 9: */ import net.minecraft.entity.player.EntityPlayer;
+/* 10: */ import net.minecraft.init.Blocks;
+/* 13: */ import net.minecraftforge.common.util.ForgeDirection;
+/* 14: */ import net.minecraftforge.fluids.Fluid;
+/* 15: */ import net.minecraftforge.fluids.FluidStack;
+/* 16: */ import net.minecraftforge.fluids.IFluidBlock;
+/* 17: */ import net.minecraftforge.fluids.IFluidHandler;
+/* 18: */
+/* 19: */ public class GT_Cover_Drain
+/* 20: */ extends GT_CoverBehavior
+/* 21: */ {
+/* 22: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 23: */ {
+/* 24:20 */ if ((aCoverVariable % 3 > 1) && ((aTileEntity instanceof IMachineProgress))) {
+/* 25:20 */ if (((IMachineProgress)aTileEntity).isAllowedToWork() != aCoverVariable % 3 < 2) {
+/* 26:20 */ return aCoverVariable;
+/* 27: */ }
+/* 28: */ }
+/* 29:21 */ if (aSide != 6)
+/* 30: */ {
+/* 31:22 */ Block tBlock = aTileEntity.getBlockAtSide(aSide);
+/* 32:23 */ if ((aCoverVariable < 3) && ((aTileEntity instanceof IFluidHandler)))
+/* 33: */ {
+/* 34:24 */ if ((aSide == 1) &&
+/* 35:25 */ (aTileEntity.getWorld().isRaining()) &&
+/* 36:26 */ (aTileEntity.getWorld().getPrecipitationHeight(aTileEntity.getXCoord(), aTileEntity.getZCoord()) - 2 < aTileEntity.getYCoord()))
+/* 37: */ {
+/* 38:27 */ int tAmount = (int)(aTileEntity.getBiome().rainfall * 10.0F);
+/* 39:28 */ if (tAmount > 0) {
+/* 40:29 */ ((IFluidHandler)aTileEntity).fill(ForgeDirection.getOrientation(aSide), Materials.Water.getFluid(aTileEntity.getWorld().isThundering() ? tAmount * 2 : tAmount), true);
+/* 41: */ }
+/* 42: */ }
+/* 43:34 */ FluidStack tLiquid = null;
+/* 44:35 */ if (tBlock != null)
+/* 45: */ {
+/* 46:36 */ if (((tBlock == Blocks.water) || (tBlock == Blocks.flowing_water)) && (aTileEntity.getMetaIDAtSide(aSide) == 0)) {
+/* 47:37 */ tLiquid = Materials.Water.getFluid(1000L);
+/* 48:38 */ } else if (((tBlock == Blocks.lava) || (tBlock == Blocks.flowing_lava)) && (aTileEntity.getMetaIDAtSide(aSide) == 0)) {
+/* 49:39 */ tLiquid = Materials.Lava.getFluid(1000L);
+/* 50:40 */ } else if ((tBlock instanceof IFluidBlock)) {
+/* 51:41 */ tLiquid = ((IFluidBlock)tBlock).drain(aTileEntity.getWorld(), aTileEntity.getOffsetX(aSide, 1), aTileEntity.getOffsetY(aSide, 1), aTileEntity.getOffsetZ(aSide, 1), false);
+/* 52: */ }
+/* 53:43 */ if ((tLiquid != null) && (tLiquid.getFluid() != null) && ((aSide > 1) || ((aSide == 0) && (tLiquid.getFluid().getDensity() <= 0)) || ((aSide == 1) && (tLiquid.getFluid().getDensity() >= 0))) &&
+/* 54:44 */ (((IFluidHandler)aTileEntity).fill(ForgeDirection.getOrientation(aSide), tLiquid, false) == tLiquid.amount))
+/* 55: */ {
+/* 56:45 */ ((IFluidHandler)aTileEntity).fill(ForgeDirection.getOrientation(aSide), tLiquid, true);
+/* 57:46 */ aTileEntity.getWorld().setBlockToAir(aTileEntity.getXCoord() + ForgeDirection.getOrientation(aSide).offsetX, aTileEntity.getYCoord() + ForgeDirection.getOrientation(aSide).offsetY, aTileEntity.getZCoord() + ForgeDirection.getOrientation(aSide).offsetZ);
+/* 58: */ }
+/* 59: */ }
+/* 60: */ }
+/* 61:51 */ if ((aCoverVariable >= 3) && (tBlock != null) && (
+/* 62:52 */ (tBlock == Blocks.lava) || (tBlock == Blocks.flowing_lava) || (tBlock == Blocks.water) || (tBlock == Blocks.flowing_water) || ((tBlock instanceof IFluidBlock)))) {
+/* 63:53 */ aTileEntity.getWorld().setBlock(aTileEntity.getOffsetX(aSide, 1), aTileEntity.getOffsetY(aSide, 1), aTileEntity.getOffsetZ(aSide, 1), Blocks.air, 0, 0);
+/* 64: */ }
+/* 65: */ }
+/* 66:57 */ return aCoverVariable;
+/* 67: */ }
+/* 68: */
+/* 69: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 70: */ {
+/* 71:62 */ aCoverVariable = (aCoverVariable + 1) % 6;
+/* 72:63 */ if (aCoverVariable == 0) {
+/* 73:63 */ GT_Utility.sendChatToPlayer(aPlayer, "Import");
+/* 74: */ }
+/* 75:64 */ if (aCoverVariable == 1) {
+/* 76:64 */ GT_Utility.sendChatToPlayer(aPlayer, "Import (conditional)");
+/* 77: */ }
+/* 78:65 */ if (aCoverVariable == 2) {
+/* 79:65 */ GT_Utility.sendChatToPlayer(aPlayer, "Import (invert cond)");
+/* 80: */ }
+/* 81:66 */ if (aCoverVariable == 3) {
+/* 82:66 */ GT_Utility.sendChatToPlayer(aPlayer, "Keep Liquids Away");
+/* 83: */ }
+/* 84:67 */ if (aCoverVariable == 4) {
+/* 85:67 */ GT_Utility.sendChatToPlayer(aPlayer, "Keep Liquids Away (conditional)");
+/* 86: */ }
+/* 87:68 */ if (aCoverVariable == 5) {
+/* 88:68 */ GT_Utility.sendChatToPlayer(aPlayer, "Keep Liquids Away (invert cond)");
+/* 89: */ }
+/* 90:69 */ return aCoverVariable;
+/* 91: */ }
+/* 92: */
+/* 93: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 94: */ {
+/* 95:74 */ if ((aCoverVariable > 1) && ((aTileEntity instanceof IMachineProgress))) {}
+/* 96:74 */ return ((IMachineProgress)aTileEntity).isAllowedToWork() == aCoverVariable < 2;
+/* 97: */ }
+/* 98: */
+/* 99: */ @Override
+public boolean alwaysLookConnected(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* :0: */ {
+/* :1:79 */ return true;
+/* :2: */ }
+/* :3: */
+/* :4: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* :5: */ {
+/* :6:84 */ return aCoverVariable < 3 ? 50 : 1;
+/* :7: */ }
+/* :8: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_Drain
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_EUMeter.java b/src/main/java/gregtech/common/covers/GT_Cover_EUMeter.java
new file mode 100644
index 0000000..476c7b7
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_EUMeter.java
@@ -0,0 +1,154 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.util.GT_CoverBehavior;
+/* 5: */ import gregtech.api.util.GT_Utility;
+/* 6: */ import net.minecraft.entity.player.EntityPlayer;
+/* 7: */ import net.minecraftforge.fluids.Fluid;
+/* 8: */
+/* 9: */ public class GT_Cover_EUMeter
+/* 10: */ extends GT_CoverBehavior
+/* 11: */ {
+/* 12: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 13: */ {
+/* 14: 12 */ long tScale = 0L;
+/* 15: 13 */ if (aCoverVariable < 2)
+/* 16: */ {
+/* 17: 14 */ tScale = aTileEntity.getUniversalEnergyCapacity() / 15L;
+/* 18: 15 */ if (tScale > 0L) {
+/* 19: 16 */ aTileEntity.setOutputRedstoneSignal(aSide, aCoverVariable % 2 == 0 ? (byte)(int)(aTileEntity.getUniversalEnergyStored() / tScale) : (byte)(int)(15L - aTileEntity.getUniversalEnergyStored() / tScale));
+/* 20: */ } else {
+/* 21: 18 */ aTileEntity.setOutputRedstoneSignal(aSide, (byte)(aCoverVariable % 2 == 0 ? 0 : 15));
+/* 22: */ }
+/* 23: */ }
+/* 24: 20 */ else if (aCoverVariable < 4)
+/* 25: */ {
+/* 26: 21 */ tScale = aTileEntity.getEUCapacity() / 15L;
+/* 27: 22 */ if (tScale > 0L) {
+/* 28: 23 */ aTileEntity.setOutputRedstoneSignal(aSide, aCoverVariable % 2 == 0 ? (byte)(int)(aTileEntity.getStoredEU() / tScale) : (byte)(int)(15L - aTileEntity.getStoredEU() / tScale));
+/* 29: */ } else {
+/* 30: 25 */ aTileEntity.setOutputRedstoneSignal(aSide, (byte)(aCoverVariable % 2 == 0 ? 0 : 15));
+/* 31: */ }
+/* 32: */ }
+/* 33: 27 */ else if (aCoverVariable < 6)
+/* 34: */ {
+/* 35: 28 */ tScale = aTileEntity.getSteamCapacity() / 15L;
+/* 36: 29 */ if (tScale > 0L) {
+/* 37: 30 */ aTileEntity.setOutputRedstoneSignal(aSide, aCoverVariable % 2 == 0 ? (byte)(int)(aTileEntity.getStoredSteam() / tScale) : (byte)(int)(15L - aTileEntity.getStoredSteam() / tScale));
+/* 38: */ } else {
+/* 39: 32 */ aTileEntity.setOutputRedstoneSignal(aSide, (byte)(aCoverVariable % 2 == 0 ? 0 : 15));
+/* 40: */ }
+/* 41: */ }
+/* 42: 34 */ else if (aCoverVariable < 8)
+/* 43: */ {
+/* 44: 35 */ tScale = aTileEntity.getInputVoltage() * aTileEntity.getInputAmperage() / 15L;
+/* 45: 36 */ if (tScale > 0L) {
+/* 46: 37 */ aTileEntity.setOutputRedstoneSignal(aSide, aCoverVariable % 2 == 0 ? (byte)(int)(aTileEntity.getAverageElectricInput() / tScale) : (byte)(int)(15L - aTileEntity.getAverageElectricInput() / tScale));
+/* 47: */ } else {
+/* 48: 39 */ aTileEntity.setOutputRedstoneSignal(aSide, (byte)(aCoverVariable % 2 == 0 ? 0 : 15));
+/* 49: */ }
+/* 50: */ }
+/* 51: 41 */ else if (aCoverVariable < 10)
+/* 52: */ {
+/* 53: 42 */ tScale = aTileEntity.getOutputVoltage() * aTileEntity.getOutputAmperage() / 15L;
+/* 54: 43 */ if (tScale > 0L) {
+/* 55: 44 */ aTileEntity.setOutputRedstoneSignal(aSide, aCoverVariable % 2 == 0 ? (byte)(int)(aTileEntity.getAverageElectricOutput() / tScale) : (byte)(int)(15L - aTileEntity.getAverageElectricOutput() / tScale));
+/* 56: */ } else {
+/* 57: 46 */ aTileEntity.setOutputRedstoneSignal(aSide, (byte)(aCoverVariable % 2 == 0 ? 0 : 15));
+/* 58: */ }
+/* 59: */ }
+/* 60: 49 */ return aCoverVariable;
+/* 61: */ }
+/* 62: */
+/* 63: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 64: */ {
+/* 65: 54 */ aCoverVariable = (aCoverVariable + 1) % 10;
+/* 66: 55 */ if (aCoverVariable == 0) {
+/* 67: 55 */ GT_Utility.sendChatToPlayer(aPlayer, "Normal Universal Storage");
+/* 68: */ }
+/* 69: 56 */ if (aCoverVariable == 1) {
+/* 70: 56 */ GT_Utility.sendChatToPlayer(aPlayer, "Inverted Universal Storage");
+/* 71: */ }
+/* 72: 57 */ if (aCoverVariable == 2) {
+/* 73: 57 */ GT_Utility.sendChatToPlayer(aPlayer, "Normal Electricity Storage");
+/* 74: */ }
+/* 75: 58 */ if (aCoverVariable == 3) {
+/* 76: 58 */ GT_Utility.sendChatToPlayer(aPlayer, "Inverted Electricity Storage");
+/* 77: */ }
+/* 78: 59 */ if (aCoverVariable == 4) {
+/* 79: 59 */ GT_Utility.sendChatToPlayer(aPlayer, "Normal Steam Storage");
+/* 80: */ }
+/* 81: 60 */ if (aCoverVariable == 5) {
+/* 82: 60 */ GT_Utility.sendChatToPlayer(aPlayer, "Inverted Steam Storage");
+/* 83: */ }
+/* 84: 61 */ if (aCoverVariable == 6) {
+/* 85: 61 */ GT_Utility.sendChatToPlayer(aPlayer, "Normal Average Electric Input");
+/* 86: */ }
+/* 87: 62 */ if (aCoverVariable == 7) {
+/* 88: 62 */ GT_Utility.sendChatToPlayer(aPlayer, "Inverted Average Electric Input");
+/* 89: */ }
+/* 90: 63 */ if (aCoverVariable == 8) {
+/* 91: 63 */ GT_Utility.sendChatToPlayer(aPlayer, "Normal Average Electric Output");
+/* 92: */ }
+/* 93: 64 */ if (aCoverVariable == 9) {
+/* 94: 64 */ GT_Utility.sendChatToPlayer(aPlayer, "Inverted Average Electric Output");
+/* 95: */ }
+/* 96: 65 */ return aCoverVariable;
+/* 97: */ }
+/* 98: */
+/* 99: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 100: */ {
+/* 101: 70 */ return true;
+/* 102: */ }
+/* 103: */
+/* 104: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 105: */ {
+/* 106: 75 */ return true;
+/* 107: */ }
+/* 108: */
+/* 109: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 110: */ {
+/* 111: 80 */ return true;
+/* 112: */ }
+/* 113: */
+/* 114: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 115: */ {
+/* 116: 85 */ return true;
+/* 117: */ }
+/* 118: */
+/* 119: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 120: */ {
+/* 121: 90 */ return true;
+/* 122: */ }
+/* 123: */
+/* 124: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 125: */ {
+/* 126: 95 */ return true;
+/* 127: */ }
+/* 128: */
+/* 129: */ @Override
+public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 130: */ {
+/* 131:100 */ return true;
+/* 132: */ }
+/* 133: */
+/* 134: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 135: */ {
+/* 136:105 */ return 5;
+/* 137: */ }
+/* 138: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_EUMeter
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_EnergyOnly.java b/src/main/java/gregtech/common/covers/GT_Cover_EnergyOnly.java
new file mode 100644
index 0000000..203d0ce
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_EnergyOnly.java
@@ -0,0 +1,122 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.interfaces.tileentity.IMachineProgress;
+/* 5: */ import gregtech.api.util.GT_CoverBehavior;
+/* 6: */ import gregtech.api.util.GT_Utility;
+/* 7: */ import net.minecraft.entity.player.EntityPlayer;
+/* 8: */ import net.minecraftforge.fluids.Fluid;
+/* 9: */
+/* 10: */ public class GT_Cover_EnergyOnly
+/* 11: */ extends GT_CoverBehavior
+/* 12: */ {
+/* 13: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 14: */ {
+/* 15:13 */ aCoverVariable = (aCoverVariable + 1) % 3;
+/* 16:14 */ if (aCoverVariable == 0) {
+/* 17:14 */ GT_Utility.sendChatToPlayer(aPlayer, "Allow");
+/* 18: */ }
+/* 19:15 */ if (aCoverVariable == 1) {
+/* 20:15 */ GT_Utility.sendChatToPlayer(aPlayer, "Allow (conditional)");
+/* 21: */ }
+/* 22:16 */ if (aCoverVariable == 2) {
+/* 23:16 */ GT_Utility.sendChatToPlayer(aPlayer, "Disallow (conditional)");
+/* 24: */ }
+/* 25:17 */ return aCoverVariable;
+/* 26: */ }
+/* 27: */
+/* 28: */ @Override
+public float getBlastProofLevel(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 29: */ {
+/* 30:22 */ return 20.0F;
+/* 31: */ }
+/* 32: */
+/* 33: */ @Override
+public boolean letsRedstoneGoIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 34: */ {
+/* 35:27 */ return false;
+/* 36: */ }
+/* 37: */
+/* 38: */ @Override
+public boolean letsRedstoneGoOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 39: */ {
+/* 40:32 */ return false;
+/* 41: */ }
+/* 42: */
+/* 43: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 44: */ {
+/* 45:37 */ if ((aCoverVariable > 1) && ((aTileEntity instanceof IMachineProgress))) {
+/* 46:37 */ if (((IMachineProgress)aTileEntity).isAllowedToWork() != aCoverVariable < 2) {
+/* 47:37 */ return false;
+/* 48: */ }
+/* 49: */ }
+/* 50:38 */ return true;
+/* 51: */ }
+/* 52: */
+/* 53: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 54: */ {
+/* 55:43 */ if ((aCoverVariable > 1) && ((aTileEntity instanceof IMachineProgress))) {
+/* 56:43 */ if (((IMachineProgress)aTileEntity).isAllowedToWork() != aCoverVariable < 2) {
+/* 57:43 */ return false;
+/* 58: */ }
+/* 59: */ }
+/* 60:44 */ return true;
+/* 61: */ }
+/* 62: */
+/* 63: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 64: */ {
+/* 65:49 */ return false;
+/* 66: */ }
+/* 67: */
+/* 68: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 69: */ {
+/* 70:54 */ return false;
+/* 71: */ }
+/* 72: */
+/* 73: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 74: */ {
+/* 75:59 */ return false;
+/* 76: */ }
+/* 77: */
+/* 78: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 79: */ {
+/* 80:64 */ return false;
+/* 81: */ }
+/* 82: */
+/* 83: */ @Override
+public boolean isGUIClickable(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 84: */ {
+/* 85:69 */ return false;
+/* 86: */ }
+/* 87: */
+/* 88: */ @Override
+public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 89: */ {
+/* 90:74 */ return false;
+/* 91: */ }
+/* 92: */
+/* 93: */ @Override
+public boolean onCoverRightclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 94: */ {
+/* 95:79 */ return false;
+/* 96: */ }
+/* 97: */
+/* 98: */ @Override
+public boolean onCoverRemoval(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, boolean aForced)
+/* 99: */ {
+/* :0:84 */ return true;
+/* :1: */ }
+/* :2: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_EnergyOnly
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java b/src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java
new file mode 100644
index 0000000..12e556f
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_ItemMeter.java
@@ -0,0 +1,109 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.util.GT_CoverBehavior;
+/* 5: */ import gregtech.api.util.GT_Utility;
+/* 6: */ import net.minecraft.entity.player.EntityPlayer;
+/* 7: */ import net.minecraft.item.ItemStack;
+/* 8: */ import net.minecraftforge.fluids.Fluid;
+/* 9: */
+/* 10: */ public class GT_Cover_ItemMeter
+/* 11: */ extends GT_CoverBehavior
+/* 12: */ {
+/* 13: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 14: */ {
+/* 15: */ int[] tSlots;
+/* 17:14 */ if (aCoverVariable < 2) {
+/* 18:15 */ tSlots = aTileEntity.getAccessibleSlotsFromSide(aSide);
+/* 19: */ } else {
+/* 20:17 */ tSlots = new int[] { aCoverVariable - 2 };
+/* 21: */ }
+/* 22:19 */ int tAll = 0;int tFull = 0;
+/* 23:20 */ for (int i : tSlots) {
+/* 24:21 */ if ((i > 0) && (i < aTileEntity.getSizeInventory()))
+/* 25: */ {
+/* 26:22 */ tAll += 64;
+/* 27:23 */ ItemStack tStack = aTileEntity.getStackInSlot(i);
+/* 28:24 */ if (tStack != null) {
+/* 29:25 */ tFull += tStack.stackSize * 64 / tStack.getMaxStackSize();
+/* 30: */ }
+/* 31: */ }
+/* 32: */ }
+/* 33:29 */ tAll /= 14;
+/* 34:30 */ if (tAll > 0) {
+/* 35:31 */ aTileEntity.setOutputRedstoneSignal(aSide, aCoverVariable != 1 ? 0 : tFull > 0 ? (byte)(tFull / tAll + 1) : (byte)(15 - (tFull > 0 ? tFull / tAll + 1 : 0)));
+/* 36: */ } else {
+/* 37:33 */ aTileEntity.setOutputRedstoneSignal(aSide, (byte)(aCoverVariable != 1 ? 0 : 15));
+/* 38: */ }
+/* 39:35 */ return aCoverVariable;
+/* 40: */ }
+/* 41: */
+/* 42: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 43: */ {
+/* 44:40 */ aCoverVariable = (aCoverVariable + 1) % (2 + aTileEntity.getSizeInventory());
+/* 45:41 */ if (aCoverVariable == 0) {
+/* 46:41 */ GT_Utility.sendChatToPlayer(aPlayer, "Normal");
+/* 47:42 */ } else if (aCoverVariable == 1) {
+/* 48:42 */ GT_Utility.sendChatToPlayer(aPlayer, "Inverted");
+/* 49: */ } else {
+/* 50:43 */ GT_Utility.sendChatToPlayer(aPlayer, "Slot: " + (aCoverVariable - 2));
+/* 51: */ }
+/* 52:44 */ return aCoverVariable;
+/* 53: */ }
+/* 54: */
+/* 55: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 56: */ {
+/* 57:49 */ return true;
+/* 58: */ }
+/* 59: */
+/* 60: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 61: */ {
+/* 62:54 */ return true;
+/* 63: */ }
+/* 64: */
+/* 65: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 66: */ {
+/* 67:59 */ return true;
+/* 68: */ }
+/* 69: */
+/* 70: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 71: */ {
+/* 72:64 */ return true;
+/* 73: */ }
+/* 74: */
+/* 75: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 76: */ {
+/* 77:69 */ return true;
+/* 78: */ }
+/* 79: */
+/* 80: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 81: */ {
+/* 82:74 */ return true;
+/* 83: */ }
+/* 84: */
+/* 85: */ @Override
+public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 86: */ {
+/* 87:79 */ return true;
+/* 88: */ }
+/* 89: */
+/* 90: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 91: */ {
+/* 92:84 */ return 5;
+/* 93: */ }
+/* 94: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_ItemMeter
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Lens.java b/src/main/java/gregtech/common/covers/GT_Cover_Lens.java
new file mode 100644
index 0000000..e4a1f6d
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_Lens.java
@@ -0,0 +1,27 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.util.GT_CoverBehavior;
+/* 5: */
+/* 6: */ public class GT_Cover_Lens
+/* 7: */ extends GT_CoverBehavior
+/* 8: */ {
+/* 9: */ private final byte mColor;
+/* 10: */
+/* 11: */ public GT_Cover_Lens(byte aColor)
+/* 12: */ {
+/* 13:10 */ this.mColor = aColor;
+/* 14: */ }
+/* 15: */
+/* 16: */ @Override
+public byte getLensColor(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 17: */ {
+/* 18:15 */ return this.mColor;
+/* 19: */ }
+/* 20: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_Lens
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_LiquidMeter.java b/src/main/java/gregtech/common/covers/GT_Cover_LiquidMeter.java
new file mode 100644
index 0000000..d05d639
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_LiquidMeter.java
@@ -0,0 +1,113 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.util.GT_CoverBehavior;
+/* 5: */ import gregtech.api.util.GT_Utility;
+/* 6: */ import net.minecraft.entity.player.EntityPlayer;
+/* 7: */ import net.minecraftforge.common.util.ForgeDirection;
+/* 8: */ import net.minecraftforge.fluids.Fluid;
+/* 9: */ import net.minecraftforge.fluids.FluidStack;
+/* 10: */ import net.minecraftforge.fluids.FluidTankInfo;
+/* 11: */ import net.minecraftforge.fluids.IFluidHandler;
+/* 12: */
+/* 13: */ public class GT_Cover_LiquidMeter
+/* 14: */ extends GT_CoverBehavior
+/* 15: */ {
+/* 16: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 17: */ {
+/* 18:16 */ if ((aTileEntity instanceof IFluidHandler))
+/* 19: */ {
+/* 20:17 */ FluidTankInfo[] tTanks = ((IFluidHandler)aTileEntity).getTankInfo(ForgeDirection.UNKNOWN);
+/* 21:18 */ long tAll = 0L;long tFull = 0L;
+/* 22:19 */ if (tTanks != null) {
+/* 23:19 */ for (FluidTankInfo tTank : tTanks) {
+/* 24:19 */ if (tTank != null)
+/* 25: */ {
+/* 26:20 */ tAll += tTank.capacity;
+/* 27:21 */ FluidStack tLiquid = tTank.fluid;
+/* 28:22 */ if (tLiquid != null) {
+/* 29:23 */ tFull += tLiquid.amount;
+/* 30: */ }
+/* 31: */ }
+/* 32: */ }
+/* 33: */ }
+/* 34:26 */ tAll /= 14L;
+/* 35:27 */ if (tAll > 0L) {
+/* 36:28 */ aTileEntity.setOutputRedstoneSignal(aSide, aCoverVariable == 0 ? 0 : tFull > 0L ? (byte)(int)(tFull / tAll + 1L) : (byte)(int)(15L - (tFull > 0L ? tFull / tAll + 1L : 0L)));
+/* 37: */ } else {
+/* 38:30 */ aTileEntity.setOutputRedstoneSignal(aSide, (byte)(aCoverVariable == 0 ? 0 : 15));
+/* 39: */ }
+/* 40: */ }
+/* 41: */ else
+/* 42: */ {
+/* 43:33 */ aTileEntity.setOutputRedstoneSignal(aSide, (byte)0);
+/* 44: */ }
+/* 45:35 */ return aCoverVariable;
+/* 46: */ }
+/* 47: */
+/* 48: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 49: */ {
+/* 50:40 */ if (aCoverVariable == 0) {
+/* 51:41 */ GT_Utility.sendChatToPlayer(aPlayer, "Inverted");
+/* 52: */ } else {
+/* 53:43 */ GT_Utility.sendChatToPlayer(aPlayer, "Normal");
+/* 54: */ }
+/* 55:44 */ return aCoverVariable == 0 ? 1 : 0;
+/* 56: */ }
+/* 57: */
+/* 58: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 59: */ {
+/* 60:49 */ return true;
+/* 61: */ }
+/* 62: */
+/* 63: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 64: */ {
+/* 65:54 */ return true;
+/* 66: */ }
+/* 67: */
+/* 68: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 69: */ {
+/* 70:59 */ return true;
+/* 71: */ }
+/* 72: */
+/* 73: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 74: */ {
+/* 75:64 */ return true;
+/* 76: */ }
+/* 77: */
+/* 78: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 79: */ {
+/* 80:69 */ return true;
+/* 81: */ }
+/* 82: */
+/* 83: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 84: */ {
+/* 85:74 */ return true;
+/* 86: */ }
+/* 87: */
+/* 88: */ @Override
+public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 89: */ {
+/* 90:79 */ return true;
+/* 91: */ }
+/* 92: */
+/* 93: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 94: */ {
+/* 95:84 */ return 5;
+/* 96: */ }
+/* 97: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_LiquidMeter
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java b/src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java
new file mode 100644
index 0000000..8626948
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_NeedMaintainance.java
@@ -0,0 +1,129 @@
+package gregtech.common.covers;
+
+import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
+import gregtech.api.interfaces.tileentity.ICoverable;
+import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_MultiBlockBase;
+import gregtech.api.util.GT_CoverBehavior;
+import gregtech.api.util.GT_Utility;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraftforge.fluids.Fluid;
+
+public class GT_Cover_NeedMaintainance extends GT_CoverBehavior{
+
+ @Override
+ public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+ {
+ boolean needsRepair = false;
+ if(aTileEntity instanceof IGregTechTileEntity){
+ IGregTechTileEntity tTileEntity = (IGregTechTileEntity) aTileEntity;
+ IMetaTileEntity mTileEntity = tTileEntity.getMetaTileEntity();
+ if(mTileEntity instanceof GT_MetaTileEntity_MultiBlockBase){
+ GT_MetaTileEntity_MultiBlockBase multi = (GT_MetaTileEntity_MultiBlockBase) mTileEntity;
+ int ideal = multi.getIdealStatus();
+ int real = multi.getRepairStatus();
+ if((aCoverVariable ==0||aCoverVariable==1)&&(ideal-real>0)){
+ needsRepair=true;
+ }
+ if((aCoverVariable ==2||aCoverVariable==3)&&(ideal-real>1)){
+ needsRepair=true;
+ }if((aCoverVariable ==4||aCoverVariable==5)&&(ideal-real>2)){
+ needsRepair=true;
+ }if((aCoverVariable ==6||aCoverVariable==7)&&(ideal-real>3)){
+ needsRepair=true;
+ }
+ }}
+ if(aCoverVariable % 2 == 0){
+ needsRepair = !needsRepair;
+ }
+
+ aTileEntity.setOutputRedstoneSignal(aSide, (byte)(needsRepair ? 0 : 15));
+ return aCoverVariable;
+ }
+
+ @Override
+ public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+ /* 64: */ {
+ /* 65: 54 */ aCoverVariable = (aCoverVariable + 1) % 10;
+ /* 66: 55 */ if (aCoverVariable == 0) {
+ /* 67: 55 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if 1 Maintainance Needed");
+ /* 68: */ }
+ /* 69: 56 */ if (aCoverVariable == 1) {
+ /* 70: 56 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if 1 Maintainance Needed(inverted)");
+ /* 71: */ }
+ /* 72: 57 */ if (aCoverVariable == 2) {
+ /* 73: 57 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if 2 Maintainance Needed");
+ /* 74: */ }
+ /* 75: 58 */ if (aCoverVariable == 3) {
+ /* 76: 58 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if 2 Maintainance Needed(inverted)");
+ /* 77: */ }
+ /* 78: 59 */ if (aCoverVariable == 4) {
+ /* 79: 59 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if 3 Maintainance Needed");
+ /* 80: */ }
+ /* 81: 60 */ if (aCoverVariable == 5) {
+ /* 82: 60 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if 3 Maintainance Needed(inverted)");
+ /* 83: */ }
+ /* 84: 61 */ if (aCoverVariable == 6) {
+ /* 85: 61 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if 4 Maintainance Needed");
+ /* 86: */ }
+ /* 87: 62 */ if (aCoverVariable == 7) {
+ /* 88: 62 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if 4 Maintainance Needed(inverted)");
+ /* 89: */ }
+ /* 90: 63 */ if (aCoverVariable == 8) {
+ /* 91: 63 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if 5 Maintainance Needed");
+ /* 92: */ }
+ /* 93: 64 */ if (aCoverVariable == 9) {
+ /* 94: 64 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if 5 Maintainance Needed(inverted)");
+ /* 95: */ }
+ /* 96: 65 */ return aCoverVariable;
+ /* 97: */ }
+ /* 98: */
+ /* 99: */ @Override
+ public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+ /* 100: */ {
+ /* 101: 70 */ return true;
+ /* 102: */ }
+ /* 103: */
+ /* 104: */ @Override
+ public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+ /* 105: */ {
+ /* 106: 75 */ return true;
+ /* 107: */ }
+ /* 108: */
+ /* 109: */ @Override
+ public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+ /* 110: */ {
+ /* 111: 80 */ return true;
+ /* 112: */ }
+ /* 113: */
+ /* 114: */ @Override
+ public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+ /* 115: */ {
+ /* 116: 85 */ return true;
+ /* 117: */ }
+ /* 118: */
+ /* 119: */ @Override
+ public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+ /* 120: */ {
+ /* 121: 90 */ return true;
+ /* 122: */ }
+ /* 123: */
+ /* 124: */ @Override
+ public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+ /* 125: */ {
+ /* 126: 95 */ return true;
+ /* 127: */ }
+ /* 128: */
+ /* 129: */ @Override
+ public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+ /* 130: */ {
+ /* 131:100 */ return true;
+ /* 132: */ }
+ /* 133: */
+ /* 134: */ @Override
+ public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+ /* 135: */ {
+ /* 136:105 */ return 60;
+ /* 137: */ }
+
+}
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java b/src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java
new file mode 100644
index 0000000..83d8011
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_PlayerDetector.java
@@ -0,0 +1,126 @@
+package gregtech.common.covers;
+
+import gregtech.api.interfaces.tileentity.ICoverable;
+import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.util.GT_CoverBehavior;
+import gregtech.api.util.GT_Utility;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.EntityPlayerMP;
+import net.minecraftforge.fluids.Fluid;
+
+public class GT_Cover_PlayerDetector extends GT_CoverBehavior{
+
+ private String placer = "";
+ private int range = 8;
+
+ @Override
+ public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+ {
+ boolean playerDetected = false;
+
+ if(aTileEntity instanceof IGregTechTileEntity){
+ if(aTileEntity.isUniversalEnergyStored(20)){
+ aTileEntity.decreaseStoredEnergyUnits(20, true);
+ range = 32;
+ }else{range = 8;}
+ placer = ((IGregTechTileEntity) aTileEntity).getOwnerName();
+ }
+ for (Object tObject : aTileEntity.getWorld().playerEntities) {
+ if ((tObject instanceof EntityPlayerMP))
+ {
+ EntityPlayerMP tEntity = (EntityPlayerMP)tObject;
+ int dist = Math.max(1, (int)tEntity.getDistance(aTileEntity.getXCoord() + 0.5D, aTileEntity.getYCoord() + 0.5D, aTileEntity.getZCoord() + 0.5D));
+ if (dist < range)
+ {
+ if (aCoverVariable == 0)
+ {
+ playerDetected=true;
+ break;
+ }
+ if (tEntity.getDisplayName().equalsIgnoreCase(placer))
+ {
+ if (aCoverVariable == 1)
+ {
+ playerDetected=true;
+ break;
+ }
+ }
+ else if (aCoverVariable == 2)
+ {
+ playerDetected=true;
+ break;
+ }
+ }
+ }
+ }
+
+
+ aTileEntity.setOutputRedstoneSignal(aSide, (byte)(playerDetected ? 15 : 0));
+ return aCoverVariable;
+ }
+
+ @Override
+ public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+ /* 64: */ {
+ /* 65: 54 */ aCoverVariable = (aCoverVariable + 1) % 3;
+ /* 66: 55 */ if (aCoverVariable == 0) {
+ /* 67: 55 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if any Player is close");
+ /* 68: */ }
+ /* 69: 56 */ if (aCoverVariable == 1) {
+ /* 70: 56 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if you are close");
+ /* 71: */ }
+ /* 72: 57 */ if (aCoverVariable == 2) {
+ /* 73: 57 */ GT_Utility.sendChatToPlayer(aPlayer, "Emit if other player is close");
+ /* 74: */ }
+ /* 96: 65 */ return aCoverVariable;
+ /* 97: */ }
+ /* 98: */
+ /* 99: */ @Override
+ public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+ /* 100: */ {
+ /* 101: 70 */ return true;
+ /* 102: */ }
+ /* 103: */
+ /* 104: */ @Override
+ public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+ /* 105: */ {
+ /* 106: 75 */ return true;
+ /* 107: */ }
+ /* 108: */
+ /* 109: */ @Override
+ public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+ /* 110: */ {
+ /* 111: 80 */ return true;
+ /* 112: */ }
+ /* 113: */
+ /* 114: */ @Override
+ public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+ /* 115: */ {
+ /* 116: 85 */ return true;
+ /* 117: */ }
+ /* 118: */
+ /* 119: */ @Override
+ public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+ /* 120: */ {
+ /* 121: 90 */ return true;
+ /* 122: */ }
+ /* 123: */
+ /* 124: */ @Override
+ public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+ /* 125: */ {
+ /* 126: 95 */ return true;
+ /* 127: */ }
+ /* 128: */
+ /* 129: */ @Override
+ public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+ /* 130: */ {
+ /* 131:100 */ return true;
+ /* 132: */ }
+ /* 133: */
+ /* 134: */ @Override
+ public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+ /* 135: */ {
+ /* 136:105 */ return 20;
+ /* 137: */ }
+
+}
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Pump.java b/src/main/java/gregtech/common/covers/GT_Cover_Pump.java
new file mode 100644
index 0000000..558b0de
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_Pump.java
@@ -0,0 +1,205 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.interfaces.tileentity.IMachineProgress;
+/* 5: */ import gregtech.api.util.GT_CoverBehavior;
+/* 6: */ import gregtech.api.util.GT_Utility;
+/* 7: */ import net.minecraft.entity.player.EntityPlayer;
+/* 8: */ import net.minecraftforge.common.util.ForgeDirection;
+/* 9: */ import net.minecraftforge.fluids.Fluid;
+/* 10: */ import net.minecraftforge.fluids.FluidStack;
+/* 11: */ import net.minecraftforge.fluids.IFluidHandler;
+/* 12: */
+/* 13: */ public class GT_Cover_Pump
+/* 14: */ extends GT_CoverBehavior
+/* 15: */ {
+/* 16: */ public final int mTransferRate;
+/* 17: */
+/* 18: */ public GT_Cover_Pump(int aTransferRate)
+/* 19: */ {
+/* 20: 18 */ this.mTransferRate = aTransferRate;
+/* 21: */ }
+/* 22: */
+/* 23: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 24: */ {
+/* 25: 23 */ if ((aCoverVariable % 6 > 1) && ((aTileEntity instanceof IMachineProgress))) {
+/* 26: 23 */ if (((IMachineProgress)aTileEntity).isAllowedToWork() != aCoverVariable % 6 < 4) {
+/* 27: 23 */ return aCoverVariable;
+/* 28: */ }
+/* 29: */ }
+/* 30: 24 */ if ((aTileEntity instanceof IFluidHandler))
+/* 31: */ {
+/* 32: 25 */ IFluidHandler tTank2 = aTileEntity.getITankContainerAtSide(aSide);
+/* 33: 26 */ if (tTank2 != null)
+/* 34: */ {
+/* 35: 27 */ aTileEntity.decreaseStoredEnergyUnits(GT_Utility.getTier(this.mTransferRate), true);
+/* 36: 28 */ IFluidHandler tTank1 = (IFluidHandler)aTileEntity;
+/* 37: 29 */ if (aCoverVariable % 2 == 0)
+/* 38: */ {
+/* 39: 30 */ FluidStack tLiquid = tTank1.drain(ForgeDirection.getOrientation(aSide), this.mTransferRate, false);
+/* 40: 31 */ if (tLiquid != null)
+/* 41: */ {
+/* 42: 32 */ tLiquid = tLiquid.copy();
+/* 43: 33 */ tLiquid.amount = tTank2.fill(ForgeDirection.getOrientation(aSide).getOpposite(), tLiquid, false);
+/* 44: 34 */ if (tLiquid.amount > 0) {
+/* 45: 35 */ if (((aCoverVariable % 2 != 1) || (aSide != 1)) && ((aCoverVariable % 2 != 0) || (aSide != 0)) && (aTileEntity.getUniversalEnergyCapacity() >= Math.min(1, tLiquid.amount / 10)))
+/* 46: */ {
+/* 47: 36 */ if (aTileEntity.isUniversalEnergyStored(Math.min(1, tLiquid.amount / 10)))
+/* 48: */ {
+/* 49: 37 */ aTileEntity.decreaseStoredEnergyUnits(Math.min(1, tLiquid.amount / 10), true);
+/* 50: 38 */ tTank2.fill(ForgeDirection.getOrientation(aSide).getOpposite(), tTank1.drain(ForgeDirection.getOrientation(aSide), tLiquid.amount, true), true);
+/* 51: */ }
+/* 52: */ }
+/* 53: */ else {
+/* 54: 41 */ tTank2.fill(ForgeDirection.getOrientation(aSide).getOpposite(), tTank1.drain(ForgeDirection.getOrientation(aSide), tLiquid.amount, true), true);
+/* 55: */ }
+/* 56: */ }
+/* 57: */ }
+/* 58: */ }
+/* 59: */ else
+/* 60: */ {
+/* 61: 46 */ FluidStack tLiquid = tTank2.drain(ForgeDirection.getOrientation(aSide).getOpposite(), this.mTransferRate, false);
+/* 62: 47 */ if (tLiquid != null)
+/* 63: */ {
+/* 64: 48 */ tLiquid = tLiquid.copy();
+/* 65: 49 */ tLiquid.amount = tTank1.fill(ForgeDirection.getOrientation(aSide), tLiquid, false);
+/* 66: 50 */ if (tLiquid.amount > 0) {
+/* 67: 51 */ if (((aCoverVariable % 2 != 1) || (aSide != 1)) && ((aCoverVariable % 2 != 0) || (aSide != 0)) && (aTileEntity.getUniversalEnergyCapacity() >= Math.min(1, tLiquid.amount / 10)))
+/* 68: */ {
+/* 69: 52 */ if (aTileEntity.isUniversalEnergyStored(Math.min(1, tLiquid.amount / 10)))
+/* 70: */ {
+/* 71: 53 */ aTileEntity.decreaseStoredEnergyUnits(Math.min(1, tLiquid.amount / 10), true);
+/* 72: 54 */ tTank1.fill(ForgeDirection.getOrientation(aSide), tTank2.drain(ForgeDirection.getOrientation(aSide).getOpposite(), tLiquid.amount, true), true);
+/* 73: */ }
+/* 74: */ }
+/* 75: */ else {
+/* 76: 57 */ tTank1.fill(ForgeDirection.getOrientation(aSide), tTank2.drain(ForgeDirection.getOrientation(aSide).getOpposite(), tLiquid.amount, true), true);
+/* 77: */ }
+/* 78: */ }
+/* 79: */ }
+/* 80: */ }
+/* 81: */ }
+/* 82: */ }
+/* 83: 64 */ return aCoverVariable;
+/* 84: */ }
+/* 85: */
+/* 86: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 87: */ {
+/* 88: 69 */ aCoverVariable = (aCoverVariable + 1) % 12;
+/* 89: 70 */ if (aCoverVariable == 0) {
+/* 90: 70 */ GT_Utility.sendChatToPlayer(aPlayer, "Export");
+/* 91: */ }
+/* 92: 71 */ if (aCoverVariable == 1) {
+/* 93: 71 */ GT_Utility.sendChatToPlayer(aPlayer, "Import");
+/* 94: */ }
+/* 95: 72 */ if (aCoverVariable == 2) {
+/* 96: 72 */ GT_Utility.sendChatToPlayer(aPlayer, "Export (conditional)");
+/* 97: */ }
+/* 98: 73 */ if (aCoverVariable == 3) {
+/* 99: 73 */ GT_Utility.sendChatToPlayer(aPlayer, "Import (conditional)");
+/* 100: */ }
+/* 101: 74 */ if (aCoverVariable == 4) {
+/* 102: 74 */ GT_Utility.sendChatToPlayer(aPlayer, "Export (invert cond)");
+/* 103: */ }
+/* 104: 75 */ if (aCoverVariable == 5) {
+/* 105: 75 */ GT_Utility.sendChatToPlayer(aPlayer, "Import (invert cond)");
+/* 106: */ }
+/* 107: 76 */ if (aCoverVariable == 6) {
+/* 108: 76 */ GT_Utility.sendChatToPlayer(aPlayer, "Export allow Input");
+/* 109: */ }
+/* 110: 77 */ if (aCoverVariable == 7) {
+/* 111: 77 */ GT_Utility.sendChatToPlayer(aPlayer, "Import allow Output");
+/* 112: */ }
+/* 113: 78 */ if (aCoverVariable == 8) {
+/* 114: 78 */ GT_Utility.sendChatToPlayer(aPlayer, "Export allow Input (conditional)");
+/* 115: */ }
+/* 116: 79 */ if (aCoverVariable == 9) {
+/* 117: 79 */ GT_Utility.sendChatToPlayer(aPlayer, "Import allow Output (conditional)");
+/* 118: */ }
+/* 119: 80 */ if (aCoverVariable == 10) {
+/* 120: 80 */ GT_Utility.sendChatToPlayer(aPlayer, "Export allow Input (invert cond)");
+/* 121: */ }
+/* 122: 81 */ if (aCoverVariable == 11) {
+/* 123: 81 */ GT_Utility.sendChatToPlayer(aPlayer, "Import allow Output (invert cond)");
+/* 124: */ }
+/* 125: 82 */ return aCoverVariable;
+/* 126: */ }
+/* 127: */
+/* 128: */ @Override
+public boolean letsRedstoneGoIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 129: */ {
+/* 130: 87 */ return true;
+/* 131: */ }
+/* 132: */
+/* 133: */ @Override
+public boolean letsRedstoneGoOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 134: */ {
+/* 135: 92 */ return true;
+/* 136: */ }
+/* 137: */
+/* 138: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 139: */ {
+/* 140: 97 */ return true;
+/* 141: */ }
+/* 142: */
+/* 143: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 144: */ {
+/* 145:102 */ return true;
+/* 146: */ }
+/* 147: */
+/* 148: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 149: */ {
+/* 150:107 */ return true;
+/* 151: */ }
+/* 152: */
+/* 153: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 154: */ {
+/* 155:112 */ return true;
+/* 156: */ }
+/* 157: */
+/* 158: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 159: */ {
+/* 160:117 */ if ((aCoverVariable > 1) && ((aTileEntity instanceof IMachineProgress))) {
+/* 161:117 */ if (((IMachineProgress)aTileEntity).isAllowedToWork() != aCoverVariable % 6 < 4) {
+/* 162:117 */ return false;
+/* 163: */ }
+/* 164: */ }
+/* 165:118 */ return (aCoverVariable >= 6) || (aCoverVariable % 2 != 0);
+/* 166: */ }
+/* 167: */
+/* 168: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 169: */ {
+/* 170:123 */ if ((aCoverVariable > 1) && ((aTileEntity instanceof IMachineProgress))) {
+/* 171:123 */ if (((IMachineProgress)aTileEntity).isAllowedToWork() != aCoverVariable % 6 < 4) {
+/* 172:123 */ return false;
+/* 173: */ }
+/* 174: */ }
+/* 175:124 */ return (aCoverVariable >= 6) || (aCoverVariable % 2 == 0);
+/* 176: */ }
+/* 177: */
+/* 178: */ @Override
+public boolean alwaysLookConnected(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 179: */ {
+/* 180:129 */ return true;
+/* 181: */ }
+/* 182: */
+/* 183: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 184: */ {
+/* 185:134 */ return 1;
+/* 186: */ }
+/* 187: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_Pump
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneConductor.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneConductor.java
new file mode 100644
index 0000000..9bddf2a
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneConductor.java
@@ -0,0 +1,100 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.util.GT_CoverBehavior;
+/* 5: */ import gregtech.api.util.GT_Utility;
+/* 6: */ import net.minecraft.entity.player.EntityPlayer;
+/* 7: */ import net.minecraftforge.fluids.Fluid;
+/* 8: */
+/* 9: */ public class GT_Cover_RedstoneConductor
+/* 10: */ extends GT_CoverBehavior
+/* 11: */ {
+/* 12: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 13: */ {
+/* 14:12 */ if (aCoverVariable == 0) {
+/* 15:12 */ aTileEntity.setOutputRedstoneSignal(aSide, aTileEntity.getStrongestRedstone());
+/* 16:13 */ } else if (aCoverVariable < 7) {
+/* 17:13 */ aTileEntity.setOutputRedstoneSignal(aSide, aTileEntity.getInternalInputRedstoneSignal((byte)(aCoverVariable - 1)));
+/* 18: */ }
+/* 19:15 */ return aCoverVariable;
+/* 20: */ }
+/* 21: */
+/* 22: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 23: */ {
+/* 24:20 */ aCoverVariable = (aCoverVariable + 1) % 7;
+/* 25:21 */ switch (aCoverVariable)
+/* 26: */ {
+/* 27: */ case 0:
+/* 28:22 */ GT_Utility.sendChatToPlayer(aPlayer, "Conducts strongest Input"); break;
+/* 29: */ case 1:
+/* 30:23 */ GT_Utility.sendChatToPlayer(aPlayer, "Conducts from bottom Input"); break;
+/* 31: */ case 2:
+/* 32:24 */ GT_Utility.sendChatToPlayer(aPlayer, "Conducts from top Input"); break;
+/* 33: */ case 3:
+/* 34:25 */ GT_Utility.sendChatToPlayer(aPlayer, "Conducts from north Input"); break;
+/* 35: */ case 4:
+/* 36:26 */ GT_Utility.sendChatToPlayer(aPlayer, "Conducts from south Input"); break;
+/* 37: */ case 5:
+/* 38:27 */ GT_Utility.sendChatToPlayer(aPlayer, "Conducts from west Input"); break;
+/* 39: */ case 6:
+/* 40:28 */ GT_Utility.sendChatToPlayer(aPlayer, "Conducts from east Input");
+/* 41: */ }
+/* 42:30 */ return aCoverVariable;
+/* 43: */ }
+/* 44: */
+/* 45: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 46: */ {
+/* 47:35 */ return true;
+/* 48: */ }
+/* 49: */
+/* 50: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 51: */ {
+/* 52:40 */ return true;
+/* 53: */ }
+/* 54: */
+/* 55: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 56: */ {
+/* 57:45 */ return true;
+/* 58: */ }
+/* 59: */
+/* 60: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 61: */ {
+/* 62:50 */ return true;
+/* 63: */ }
+/* 64: */
+/* 65: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 66: */ {
+/* 67:55 */ return true;
+/* 68: */ }
+/* 69: */
+/* 70: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 71: */ {
+/* 72:60 */ return true;
+/* 73: */ }
+/* 74: */
+/* 75: */ @Override
+public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 76: */ {
+/* 77:65 */ return true;
+/* 78: */ }
+/* 79: */
+/* 80: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 81: */ {
+/* 82:70 */ return 1;
+/* 83: */ }
+/* 84: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_RedstoneConductor
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverExternal.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverExternal.java
new file mode 100644
index 0000000..689804f
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverExternal.java
@@ -0,0 +1,33 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.GregTech_API;
+/* 4: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 6: */
+/* 7: */ public class GT_Cover_RedstoneReceiverExternal
+/* 8: */ extends GT_Cover_RedstoneWirelessBase
+/* 9: */ {
+/* 10: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 11: */ {
+/* 12: 9 */ aTileEntity.setOutputRedstoneSignal(aSide, GregTech_API.sWirelessRedstone.get(Integer.valueOf(aCoverVariable)) == null ? 0 : GregTech_API.sWirelessRedstone.get(Integer.valueOf(aCoverVariable)).byteValue());
+/* 13:10 */ return aCoverVariable;
+/* 14: */ }
+/* 15: */
+/* 16: */ @Override
+public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 17: */ {
+/* 18:15 */ return true;
+/* 19: */ }
+/* 20: */
+/* 21: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 22: */ {
+/* 23:20 */ return 1;
+/* 24: */ }
+/* 25: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_RedstoneReceiverExternal
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverInternal.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverInternal.java
new file mode 100644
index 0000000..c2141a7
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneReceiverInternal.java
@@ -0,0 +1,32 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.GregTech_API;
+/* 4: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 6: */
+/* 7: */ public class GT_Cover_RedstoneReceiverInternal
+/* 8: */ extends GT_Cover_RedstoneWirelessBase
+/* 9: */ {
+/* 10: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 11: */ {
+/* 12: 9 */ return aCoverVariable;
+/* 13: */ }
+/* 14: */
+/* 15: */ @Override
+public byte getRedstoneInput(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 16: */ {
+/* 17:14 */ return GregTech_API.sWirelessRedstone.get(Integer.valueOf(aCoverVariable)) == null ? 0 : GregTech_API.sWirelessRedstone.get(Integer.valueOf(aCoverVariable)).byteValue();
+/* 18: */ }
+/* 19: */
+/* 20: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 21: */ {
+/* 22:19 */ return 1;
+/* 23: */ }
+/* 24: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_RedstoneReceiverInternal
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneSignalizer.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneSignalizer.java
new file mode 100644
index 0000000..ff89620
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneSignalizer.java
@@ -0,0 +1,96 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.interfaces.tileentity.IMachineProgress;
+/* 5: */ import gregtech.api.util.GT_CoverBehavior;
+/* 6: */ import gregtech.api.util.GT_Utility;
+/* 7: */ import net.minecraft.entity.player.EntityPlayer;
+/* 8: */ import net.minecraftforge.fluids.Fluid;
+/* 9: */
+/* 10: */ public class GT_Cover_RedstoneSignalizer
+/* 11: */ extends GT_CoverBehavior
+/* 12: */ {
+/* 13: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 14: */ {
+/* 15:13 */ aCoverVariable = (aCoverVariable + 1) % 48;
+/* 16:14 */ if (aCoverVariable / 16 == 0) {
+/* 17:15 */ GT_Utility.sendChatToPlayer(aPlayer, "Signal = " + (aCoverVariable & 0xF));
+/* 18:16 */ } else if (aCoverVariable / 16 == 1) {
+/* 19:17 */ GT_Utility.sendChatToPlayer(aPlayer, "Conditional Signal = " + (aCoverVariable & 0xF));
+/* 20:18 */ } else if (aCoverVariable / 16 == 2) {
+/* 21:19 */ GT_Utility.sendChatToPlayer(aPlayer, "Inverted Conditional Signal = " + (aCoverVariable & 0xF));
+/* 22: */ }
+/* 23:20 */ return aCoverVariable;
+/* 24: */ }
+/* 25: */
+/* 26: */ @Override
+public boolean letsRedstoneGoIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 27: */ {
+/* 28:25 */ return true;
+/* 29: */ }
+/* 30: */
+/* 31: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 32: */ {
+/* 33:30 */ return true;
+/* 34: */ }
+/* 35: */
+/* 36: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 37: */ {
+/* 38:35 */ return true;
+/* 39: */ }
+/* 40: */
+/* 41: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 42: */ {
+/* 43:40 */ return true;
+/* 44: */ }
+/* 45: */
+/* 46: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 47: */ {
+/* 48:45 */ return true;
+/* 49: */ }
+/* 50: */
+/* 51: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 52: */ {
+/* 53:50 */ return true;
+/* 54: */ }
+/* 55: */
+/* 56: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 57: */ {
+/* 58:55 */ return true;
+/* 59: */ }
+/* 60: */
+/* 61: */ @Override
+public byte getRedstoneInput(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 62: */ {
+/* 63:60 */ if (aCoverVariable < 16) {
+/* 64:60 */ return (byte)(aCoverVariable & 0xF);
+/* 65: */ }
+/* 66:61 */ if ((aTileEntity instanceof IMachineProgress))
+/* 67: */ {
+/* 68:62 */ if (((IMachineProgress)aTileEntity).isAllowedToWork())
+/* 69: */ {
+/* 70:63 */ if (aCoverVariable / 16 == 1) {
+/* 71:64 */ return (byte)(aCoverVariable & 0xF);
+/* 72: */ }
+/* 73: */ }
+/* 74:67 */ else if (aCoverVariable / 16 == 2) {
+/* 75:68 */ return (byte)(aCoverVariable & 0xF);
+/* 76: */ }
+/* 77:71 */ return 0;
+/* 78: */ }
+/* 79:73 */ return (byte)(aCoverVariable & 0xF);
+/* 80: */ }
+/* 81: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_RedstoneSignalizer
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterExternal.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterExternal.java
new file mode 100644
index 0000000..bf8337b
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterExternal.java
@@ -0,0 +1,33 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.GregTech_API;
+/* 4: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 6: */
+/* 7: */ public class GT_Cover_RedstoneTransmitterExternal
+/* 8: */ extends GT_Cover_RedstoneWirelessBase
+/* 9: */ {
+/* 10: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 11: */ {
+/* 12: 9 */ GregTech_API.sWirelessRedstone.put(Integer.valueOf(aCoverVariable), Byte.valueOf(aInputRedstone));
+/* 13:10 */ return aCoverVariable;
+/* 14: */ }
+/* 15: */
+/* 16: */ @Override
+public boolean letsRedstoneGoIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 17: */ {
+/* 18:15 */ return true;
+/* 19: */ }
+/* 20: */
+/* 21: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 22: */ {
+/* 23:20 */ return 1;
+/* 24: */ }
+/* 25: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_RedstoneTransmitterExternal
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java
new file mode 100644
index 0000000..1e1fcbb
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneTransmitterInternal.java
@@ -0,0 +1,33 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.GregTech_API;
+/* 4: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 6: */
+/* 7: */ public class GT_Cover_RedstoneTransmitterInternal
+/* 8: */ extends GT_Cover_RedstoneWirelessBase
+/* 9: */ {
+/* 10: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 11: */ {
+/* 12: 9 */ GregTech_API.sWirelessRedstone.put(Integer.valueOf(aCoverVariable), Byte.valueOf(aTileEntity.getOutputRedstoneSignal(aSide)));
+/* 13:10 */ return aCoverVariable;
+/* 14: */ }
+/* 15: */
+/* 16: */ @Override
+public boolean letsRedstoneGoOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 17: */ {
+/* 18:15 */ return true;
+/* 19: */ }
+/* 20: */
+/* 21: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 22: */ {
+/* 23:20 */ return 1;
+/* 24: */ }
+/* 25: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_RedstoneTransmitterInternal
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_RedstoneWirelessBase.java b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneWirelessBase.java
new file mode 100644
index 0000000..cdf5a31
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_RedstoneWirelessBase.java
@@ -0,0 +1,113 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.GregTech_API;
+/* 4: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 5: */ import gregtech.api.util.GT_CoverBehavior;
+/* 6: */ import gregtech.api.util.GT_Utility;
+/* 8: */ import net.minecraft.entity.player.EntityPlayer;
+/* 10: */ import net.minecraftforge.fluids.Fluid;
+/* 11: */
+/* 12: */ public abstract class GT_Cover_RedstoneWirelessBase
+/* 13: */ extends GT_CoverBehavior
+/* 14: */ {
+/* 15: */ @Override
+public boolean onCoverRemoval(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, boolean aForced)
+/* 16: */ {
+/* 17:13 */ GregTech_API.sWirelessRedstone.put(Integer.valueOf(aCoverVariable), Byte.valueOf((byte)0));
+/* 18:14 */ return true;
+/* 19: */ }
+/* 20: */
+/* 21: */ @Override
+public boolean onCoverRightclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 22: */ {
+/* 23:19 */ if (((aX > 0.375D) && (aX < 0.625D)) || ((aSide > 3) && (((aY > 0.375D) && (aY < 0.625D)) || ((aSide < 2) && (((aZ > 0.375D) && (aZ < 0.625D)) || (aSide == 2) || (aSide == 3))))))
+/* 24: */ {
+/* 25:20 */ GregTech_API.sWirelessRedstone.put(Integer.valueOf(aCoverVariable), Byte.valueOf((byte)0));
+/* 26:21 */ aCoverVariable = GT_Utility.stackToInt(aPlayer.inventory.getCurrentItem());
+/* 27:22 */ aTileEntity.setCoverDataAtSide(aSide, aCoverVariable);
+/* 28:23 */ GT_Utility.sendChatToPlayer(aPlayer, "Frequency: " + aCoverVariable);
+/* 29:24 */ return true;
+/* 30: */ }
+/* 31:26 */ return false;
+/* 32: */ }
+/* 33: */
+/* 34: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 35: */ {
+/* 36:31 */ if (((aX > 0.375D) && (aX < 0.625D)) || ((aSide <= 3) || (((aY > 0.375D) && (aY < 0.625D)) || ((aSide >= 2) || (((aZ <= 0.375D) || (aZ >= 0.625D)) && (aSide != 2) && (aSide != 3))))))
+/* 37: */ {
+/* 38:34 */ GregTech_API.sWirelessRedstone.put(Integer.valueOf(aCoverVariable), Byte.valueOf((byte)0));
+/* 39:35 */ float[] tCoords = GT_Utility.getClickedFacingCoords(aSide, aX, aY, aZ);
+/* 40:36 */ switch ((byte)((byte)(int)(tCoords[0] * 2.0F) + 2 * (byte)(int)(tCoords[1] * 2.0F)))
+/* 41: */ {
+/* 42: */ case 0:
+/* 43:38 */ aCoverVariable -= 32;
+/* 44:39 */ break;
+/* 45: */ case 1:
+/* 46:41 */ aCoverVariable += 32;
+/* 47:42 */ break;
+/* 48: */ case 2:
+/* 49:44 */ aCoverVariable -= 1024;
+/* 50:45 */ break;
+/* 51: */ case 3:
+/* 52:47 */ aCoverVariable += 1024;
+/* 53: */ }
+/* 54: */ }
+/* 55:51 */ GT_Utility.sendChatToPlayer(aPlayer, "Frequency: " + aCoverVariable);
+/* 56:52 */ return aCoverVariable;
+/* 57: */ }
+/* 58: */
+/* 59: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 60: */ {
+/* 61:57 */ return true;
+/* 62: */ }
+/* 63: */
+/* 64: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 65: */ {
+/* 66:62 */ return true;
+/* 67: */ }
+/* 68: */
+/* 69: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 70: */ {
+/* 71:67 */ return true;
+/* 72: */ }
+/* 73: */
+/* 74: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 75: */ {
+/* 76:72 */ return true;
+/* 77: */ }
+/* 78: */
+/* 79: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 80: */ {
+/* 81:77 */ return true;
+/* 82: */ }
+/* 83: */
+/* 84: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 85: */ {
+/* 86:82 */ return true;
+/* 87: */ }
+/* 88: */
+/* 89: */ @Override
+public String getDescription(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 90: */ {
+/* 91:87 */ return "Frequency: " + aCoverVariable;
+/* 92: */ }
+/* 93: */
+/* 94: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 95: */ {
+/* 96:92 */ return 1;
+/* 97: */ }
+/* 98: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_RedstoneWirelessBase
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Screen.java b/src/main/java/gregtech/common/covers/GT_Cover_Screen.java
new file mode 100644
index 0000000..06c1ac0
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_Screen.java
@@ -0,0 +1,100 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.util.GT_CoverBehavior;
+/* 5: */ import net.minecraft.entity.player.EntityPlayer;
+/* 6: */ import net.minecraftforge.fluids.Fluid;
+/* 7: */
+/* 8: */ public class GT_Cover_Screen
+/* 9: */ extends GT_CoverBehavior
+/* 10: */ {
+/* 11: */ @Override
+public float getBlastProofLevel(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 12: */ {
+/* 13:11 */ return 20.0F;
+/* 14: */ }
+/* 15: */
+/* 16: */ @Override
+public boolean letsRedstoneGoIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 17: */ {
+/* 18:16 */ return false;
+/* 19: */ }
+/* 20: */
+/* 21: */ @Override
+public boolean letsRedstoneGoOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 22: */ {
+/* 23:21 */ return false;
+/* 24: */ }
+/* 25: */
+/* 26: */ @Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 27: */ {
+/* 28:26 */ return false;
+/* 29: */ }
+/* 30: */
+/* 31: */ @Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 32: */ {
+/* 33:31 */ return false;
+/* 34: */ }
+/* 35: */
+/* 36: */ @Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 37: */ {
+/* 38:36 */ return false;
+/* 39: */ }
+/* 40: */
+/* 41: */ @Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+/* 42: */ {
+/* 43:41 */ return false;
+/* 44: */ }
+/* 45: */
+/* 46: */ @Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 47: */ {
+/* 48:46 */ return false;
+/* 49: */ }
+/* 50: */
+/* 51: */ @Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+/* 52: */ {
+/* 53:51 */ return false;
+/* 54: */ }
+/* 55: */
+/* 56: */ @Override
+public boolean isGUIClickable(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 57: */ {
+/* 58:56 */ return true;
+/* 59: */ }
+/* 60: */
+/* 61: */ @Override
+public boolean manipulatesSidedRedstoneOutput(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 62: */ {
+/* 63:61 */ return false;
+/* 64: */ }
+/* 65: */
+/* 66: */ @Override
+public boolean onCoverRightclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 67: */ {
+/* 68:66 */ return false;
+/* 69: */ }
+/* 70: */
+/* 71: */ @Override
+public boolean onCoverRemoval(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, boolean aForced)
+/* 72: */ {
+/* 73:71 */ return true;
+/* 74: */ }
+/* 75: */
+/* 76: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 77: */ {
+/* 78:76 */ return 0;
+/* 79: */ }
+/* 80: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_Screen
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java b/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java
new file mode 100644
index 0000000..8bfca37
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_Shutter.java
@@ -0,0 +1,103 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+import gregtech.api.interfaces.tileentity.IMachineProgress;
+/* 4: */ import gregtech.api.util.GT_CoverBehavior;
+/* 5: */ import gregtech.api.util.GT_Utility;
+/* 6: */ import net.minecraft.entity.player.EntityPlayer;
+/* 7: */ import net.minecraftforge.fluids.Fluid;
+/* 8: */
+/* 9: */ public class GT_Cover_Shutter
+/* 10: */ extends GT_CoverBehavior
+/* 11: */ {
+/* 12: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 13: */ {
+/* 14:13 */ return aCoverVariable;
+/* 15: */ }
+/* 16: */
+/* 17: */ @Override
+public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ)
+/* 18: */ {
+/* 19:18 */ aCoverVariable = (aCoverVariable + 1) % 4;
+/* 20:19 */ if (aCoverVariable == 0) {
+/* 21:19 */ GT_Utility.sendChatToPlayer(aPlayer, "Open if work enabled");
+/* 22: */ }
+/* 23:20 */ if (aCoverVariable == 1) {
+/* 24:20 */ GT_Utility.sendChatToPlayer(aPlayer, "Open if work disabled");
+/* 25: */ }
+/* 26:21 */ if (aCoverVariable == 2) {
+/* 27:21 */ GT_Utility.sendChatToPlayer(aPlayer, "Only Output allowed");
+/* 28: */ }
+/* 29:22 */ if (aCoverVariable == 3) {
+/* 30:22 */ GT_Utility.sendChatToPlayer(aPlayer, "Only Input allowed");
+/* 31: */ }
+/* 32:23 */ return aCoverVariable;
+/* 33: */ }
+/* 34: */
+/* 35: */ @Override
+public boolean letsRedstoneGoIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+{
+ return aCoverVariable >= 2 ? aCoverVariable == 3 : (aTileEntity instanceof IMachineProgress) ? ((IMachineProgress)aTileEntity).isAllowedToWork() ? aCoverVariable % 2 == 0 : aCoverVariable % 2 != 0 : true;
+}
+
+@Override
+public boolean letsRedstoneGoOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+{
+ return aCoverVariable >= 2 ? aCoverVariable == 2 : (aTileEntity instanceof IMachineProgress) ? ((IMachineProgress)aTileEntity).isAllowedToWork() ? aCoverVariable % 2 == 0 : aCoverVariable % 2 != 0 : true;
+}
+
+@Override
+public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+{
+ return aCoverVariable >= 2 ? aCoverVariable == 3 : (aTileEntity instanceof IMachineProgress) ? ((IMachineProgress)aTileEntity).isAllowedToWork() ? aCoverVariable % 2 == 0 : aCoverVariable % 2 != 0 : true;
+}
+
+@Override
+public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+{
+ return aCoverVariable >= 2 ? aCoverVariable == 2 : (aTileEntity instanceof IMachineProgress) ? ((IMachineProgress)aTileEntity).isAllowedToWork() ? aCoverVariable % 2 == 0 : aCoverVariable % 2 != 0 : true;
+}
+
+@Override
+public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+{
+ return aCoverVariable >= 2 ? aCoverVariable == 3 : (aTileEntity instanceof IMachineProgress) ? ((IMachineProgress)aTileEntity).isAllowedToWork() ? aCoverVariable % 2 == 0 : aCoverVariable % 2 != 0 : true;
+}
+
+@Override
+public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity)
+{
+ return aCoverVariable >= 2 ? aCoverVariable == 2 : (aTileEntity instanceof IMachineProgress) ? ((IMachineProgress)aTileEntity).isAllowedToWork() ? aCoverVariable % 2 == 0 : aCoverVariable % 2 != 0 : true;
+}
+
+@Override
+public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+{
+ return aCoverVariable >= 2 ? aCoverVariable == 3 : (aTileEntity instanceof IMachineProgress) ? ((IMachineProgress)aTileEntity).isAllowedToWork() ? aCoverVariable % 2 == 0 : aCoverVariable % 2 != 0 : true;
+}
+
+@Override
+public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity)
+{
+ return aCoverVariable >= 2 ? aCoverVariable == 2 : (aTileEntity instanceof IMachineProgress) ? ((IMachineProgress)aTileEntity).isAllowedToWork() ? aCoverVariable % 2 == 0 : aCoverVariable % 2 != 0 : true;
+}
+/* 74: */
+/* 75: */ @Override
+public boolean alwaysLookConnected(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 76: */ {
+/* 77:68 */ return true;
+/* 78: */ }
+/* 79: */
+/* 80: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 81: */ {
+/* 82:73 */ return 0;
+/* 83: */ }
+/* 84: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_Shutter
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_SolarPanel.java b/src/main/java/gregtech/common/covers/GT_Cover_SolarPanel.java
new file mode 100644
index 0000000..2e3664f
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_SolarPanel.java
@@ -0,0 +1,47 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.util.GT_CoverBehavior;
+/* 7: */
+/* 8: */ public class GT_Cover_SolarPanel
+/* 9: */ extends GT_CoverBehavior
+/* 10: */ {
+/* 11: */ private final int mVoltage;
+/* 12: */
+/* 13: */ public GT_Cover_SolarPanel(int aVoltage)
+/* 14: */ {
+/* 15:11 */ this.mVoltage = aVoltage;
+/* 16: */ }
+/* 17: */
+/* 18: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 19: */ {
+/* 20:16 */ if (aTimer % 100L == 0L) {
+/* 21:17 */ if ((aSide != 1) || (aTileEntity.getWorld().isThundering()))
+/* 22: */ {
+/* 23:18 */ aCoverVariable = 0;
+/* 24: */ }
+/* 25: */ else
+/* 26: */ {
+/* 27:20 */ boolean bRain = (aTileEntity.getWorld().isRaining()) && (aTileEntity.getBiome().rainfall > 0.0F);
+/* 28:21 */ aCoverVariable = ((!bRain) || (aTileEntity.getWorld().skylightSubtracted < 4)) && (aTileEntity.getSkyAtSide(aSide)) ? 1 : (bRain) || (!aTileEntity.getWorld().isDaytime()) ? 2 : 0;
+/* 29: */ }
+/* 30: */ }
+/* 31:24 */ if ((aCoverVariable == 1) || ((aCoverVariable == 2) && (aTimer % 8L == 0L))) {
+/* 32:24 */ aTileEntity.injectEnergyUnits((byte)6, this.mVoltage, 1L);
+/* 33: */ }
+/* 34:25 */ return aCoverVariable;
+/* 35: */ }
+/* 36: */
+/* 37: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 38: */ {
+/* 39:30 */ return 1;
+/* 40: */ }
+/* 41: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_SolarPanel
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file
diff --git a/src/main/java/gregtech/common/covers/GT_Cover_Vent.java b/src/main/java/gregtech/common/covers/GT_Cover_Vent.java
new file mode 100644
index 0000000..1d14725
--- /dev/null
+++ b/src/main/java/gregtech/common/covers/GT_Cover_Vent.java
@@ -0,0 +1,49 @@
+/* 1: */ package gregtech.common.covers;
+/* 2: */
+/* 3: */ import gregtech.api.interfaces.tileentity.ICoverable;
+/* 4: */ import gregtech.api.interfaces.tileentity.IMachineProgress;
+/* 5: */ import gregtech.api.util.GT_CoverBehavior;
+/* 6: */ import gregtech.api.util.GT_Utility;
+/* 7: */
+/* 8: */ public class GT_Cover_Vent
+/* 9: */ extends GT_CoverBehavior
+/* 10: */ {
+/* 11: */ private final int mEfficiency;
+/* 12: */
+/* 13: */ public GT_Cover_Vent(int aEfficiency)
+/* 14: */ {
+/* 15:13 */ this.mEfficiency = aEfficiency;
+/* 16: */ }
+/* 17: */
+/* 18: */ @Override
+public int doCoverThings(byte aSide, byte aInputRedstone, int aCoverID, int aCoverVariable, ICoverable aTileEntity, long aTimer)
+/* 19: */ {
+/* 20:18 */ if ((aTileEntity instanceof IMachineProgress))
+/* 21: */ {
+/* 22:19 */ if ((((IMachineProgress)aTileEntity).hasThingsToDo()) && (aCoverVariable != ((IMachineProgress)aTileEntity).getProgress()) &&
+/* 23:20 */ (!GT_Utility.hasBlockHitBox(aTileEntity.getWorld(), aTileEntity.getOffsetX(aSide, 1), aTileEntity.getOffsetY(aSide, 1), aTileEntity.getOffsetZ(aSide, 1)))) {
+/* 24:21 */ ((IMachineProgress)aTileEntity).increaseProgress(this.mEfficiency);
+/* 25: */ }
+/* 26:24 */ return ((IMachineProgress)aTileEntity).getProgress();
+/* 27: */ }
+/* 28:26 */ return 0;
+/* 29: */ }
+/* 30: */
+/* 31: */ @Override
+public boolean alwaysLookConnected(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 32: */ {
+/* 33:31 */ return true;
+/* 34: */ }
+/* 35: */
+/* 36: */ @Override
+public int getTickRate(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity)
+/* 37: */ {
+/* 38:36 */ return 60;
+/* 39: */ }
+/* 40: */ }
+
+
+/* Location: F:\Torrent\minecraft\jd-gui-0.3.6.windows\gregtech_1.7.10-5.07.07-dev.jar
+ * Qualified Name: gregtech.common.covers.GT_Cover_Vent
+ * JD-Core Version: 0.7.0.1
+ */ \ No newline at end of file