aboutsummaryrefslogtreecommitdiff
path: root/main/java/gregtech/api/interfaces/tileentity/ICoverable.java
diff options
context:
space:
mode:
authorBlood Asp <Blood@Asp>2015-04-23 18:14:22 +0200
committerBlood Asp <Blood@Asp>2015-04-23 18:14:22 +0200
commit7224ac4299098c70efae9dbd04c50a97e3f5f583 (patch)
treec739bb7d176a9735bc8e598063918023de32330c /main/java/gregtech/api/interfaces/tileentity/ICoverable.java
downloadGT5-Unofficial-7224ac4299098c70efae9dbd04c50a97e3f5f583.tar.gz
GT5-Unofficial-7224ac4299098c70efae9dbd04c50a97e3f5f583.tar.bz2
GT5-Unofficial-7224ac4299098c70efae9dbd04c50a97e3f5f583.zip
Initial Commit
Diffstat (limited to 'main/java/gregtech/api/interfaces/tileentity/ICoverable.java')
-rw-r--r--main/java/gregtech/api/interfaces/tileentity/ICoverable.java35
1 files changed, 35 insertions, 0 deletions
diff --git a/main/java/gregtech/api/interfaces/tileentity/ICoverable.java b/main/java/gregtech/api/interfaces/tileentity/ICoverable.java
new file mode 100644
index 0000000000..546b8d81c6
--- /dev/null
+++ b/main/java/gregtech/api/interfaces/tileentity/ICoverable.java
@@ -0,0 +1,35 @@
+package gregtech.api.interfaces.tileentity;
+
+import gregtech.api.util.GT_CoverBehavior;
+import net.minecraft.item.ItemStack;
+
+public interface ICoverable extends IRedstoneTileEntity, IHasInventory, IBasicEnergyContainer {
+ public boolean canPlaceCoverIDAtSide (byte aSide, int aID);
+ public boolean canPlaceCoverItemAtSide (byte aSide, ItemStack aCover);
+ public boolean dropCover (byte aSide, byte aDroppedSide, boolean aForced);
+ public void setCoverDataAtSide (byte aSide, int aData);
+ public void setCoverIDAtSide (byte aSide, int aID);
+ public void setCoverItemAtSide (byte aSide, ItemStack aCover);
+ public int getCoverDataAtSide (byte aSide);
+ public int getCoverIDAtSide (byte aSide);
+ public ItemStack getCoverItemAtSide (byte aSide);
+ public GT_CoverBehavior getCoverBehaviorAtSide (byte aSide);
+
+ /**
+ * For use by the regular MetaTileEntities. Returns the Cover Manipulated input Redstone.
+ * Don't use this if you are a Cover Behavior. Only for MetaTileEntities.
+ */
+ public byte getInternalInputRedstoneSignal(byte aSide);
+
+ /**
+ * For use by the regular MetaTileEntities. This makes it not conflict with Cover based Redstone Signals.
+ * Don't use this if you are a Cover Behavior. Only for MetaTileEntities.
+ */
+ public void setInternalOutputRedstoneSignal(byte aSide, byte aStrength);
+
+ /**
+ * Causes a general Cover Texture update.
+ * Sends 6 Integers to Client + causes @issueTextureUpdate()
+ */
+ public void issueCoverUpdate(byte aSide);
+} \ No newline at end of file