aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java
diff options
context:
space:
mode:
authorShawn Buckley <shawntbuckley@gmail.com>2015-10-18 23:04:39 -0400
committerShawn Buckley <shawntbuckley@gmail.com>2015-10-18 23:04:39 -0400
commit85c804fa112fd1f19c91e45d150a787cfbf0f7a8 (patch)
treecb302d8e0f46e06be0b1d391317578b165aec245 /src/main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java
parentce25063b910bb3bdd2b0c234b185fc4077caebdb (diff)
downloadGT5-Unofficial-85c804fa112fd1f19c91e45d150a787cfbf0f7a8.tar.gz
GT5-Unofficial-85c804fa112fd1f19c91e45d150a787cfbf0f7a8.tar.bz2
GT5-Unofficial-85c804fa112fd1f19c91e45d150a787cfbf0f7a8.zip
Move source directory
Diffstat (limited to 'src/main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java')
-rw-r--r--src/main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java b/src/main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java
new file mode 100644
index 0000000000..13c63b7555
--- /dev/null
+++ b/src/main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java
@@ -0,0 +1,66 @@
+package gregtech.api.interfaces;
+
+import gregtech.api.interfaces.tileentity.ICoverable;
+import gregtech.api.util.GT_CoverBehavior;
+import net.minecraft.block.Block;
+import net.minecraft.tileentity.TileEntity;
+
+/**
+ * Implemented by the MetaTileEntity of the Redstone Circuit Block
+ */
+public interface IRedstoneCircuitBlock {
+ /**
+ * The Output Direction the Circuit Block is Facing
+ */
+ public byte getOutputFacing();
+
+ /**
+ * sets Output Redstone State at Side
+ */
+ public boolean setRedstone(byte aStrength, byte aSide);
+
+ /**
+ * returns Output Redstone State at Side
+ * Note that setRedstone checks if there is a Difference between the old and the new Setting before consuming any Energy
+ */
+ public byte getOutputRedstone(byte aSide);
+
+ /**
+ * returns Input Redstone Signal at Side
+ */
+ public byte getInputRedstone(byte aSide);
+
+ /**
+ * If this Side is Covered up and therefor not doing any Redstone
+ */
+ public GT_CoverBehavior getCover(byte aSide);
+
+ public int getCoverID(byte aSide);
+
+ public int getCoverVariable(byte aSide);
+
+ /**
+ * returns whatever Block-ID is adjacent to the Redstone Circuit Block
+ */
+ public Block getBlockAtSide(byte aSide);
+
+ /**
+ * returns whatever Meta-Value is adjacent to the Redstone Circuit Block
+ */
+ public byte getMetaIDAtSide(byte aSide);
+
+ /**
+ * returns whatever TileEntity is adjacent to the Redstone Circuit Block
+ */
+ public TileEntity getTileEntityAtSide(byte aSide);
+
+ /**
+ * returns whatever TileEntity is used by the Redstone Circuit Block
+ */
+ public ICoverable getOwnTileEntity();
+
+ /**
+ * returns worldObj.rand.nextInt(aRange)
+ */
+ public int getRandom(int aRange);
+}