summaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/interfaces/IRedstoneCircuitBlock.java
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/api/interfaces/IRedstoneCircuitBlock.java
parent877312184c472d9845e5ef1008bc538f4634059f (diff)
fix missing source folder
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 0000000..13c63b7
--- /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);
+}