aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java11
-rw-r--r--src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java12
2 files changed, 16 insertions, 7 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java
index 475bee8eb9..bff79743be 100644
--- a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java
+++ b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java
@@ -1254,17 +1254,22 @@ public class BaseMetaPipeEntity extends BaseTileEntity implements IGregTechTileE
@Override
public void setCoverDataAtSide(byte aSide, ISerializableObject aData) {
- mCoverData[aSide] = aData;
+ if (aSide >= 0 && aSide < 6 && getCoverBehaviorAtSideNew(aSide) != null && getCoverBehaviorAtSideNew(aSide).cast(aData) != null)
+ mCoverData[aSide] = aData;
}
@Override
public ISerializableObject getComplexCoverDataAtSide(byte aSide) {
- return mCoverData[aSide];
+ if (aSide >= 0 && aSide < 6 && getCoverBehaviorAtSideNew(aSide) != null)
+ return mCoverData[aSide];
+ return GregTech_API.sNoBehavior.createDataObject();
}
@Override
public GT_CoverBehaviorBase<?> getCoverBehaviorAtSideNew(byte aSide) {
- return mCoverBehaviors[aSide];
+ if (aSide >= 0 && aSide < 6)
+ return mCoverBehaviors[aSide];
+ return GregTech_API.sNoBehavior;
}
@Override
diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java
index a56c0020a3..9176d063ce 100644
--- a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java
+++ b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java
@@ -1864,20 +1864,24 @@ public class BaseMetaTileEntity extends BaseTileEntity implements IGregTechTileE
return ((ISerializableObject.LegacyCoverData) mCoverData[aSide]).get();
return 0;
}
-
@Override
public void setCoverDataAtSide(byte aSide, ISerializableObject aData) {
- mCoverData[aSide] = aData;
+ if (aSide >= 0 && aSide < 6 && getCoverBehaviorAtSideNew(aSide) != null && getCoverBehaviorAtSideNew(aSide).cast(aData) != null)
+ mCoverData[aSide] = aData;
}
@Override
public ISerializableObject getComplexCoverDataAtSide(byte aSide) {
- return mCoverData[aSide];
+ if (aSide >= 0 && aSide < 6 && getCoverBehaviorAtSideNew(aSide) != null)
+ return mCoverData[aSide];
+ return GregTech_API.sNoBehavior.createDataObject();
}
@Override
public GT_CoverBehaviorBase<?> getCoverBehaviorAtSideNew(byte aSide) {
- return mCoverBehaviors[aSide];
+ if (aSide >= 0 && aSide < 6)
+ return mCoverBehaviors[aSide];
+ return GregTech_API.sNoBehavior;
}
public byte getLightValue() {