diff --git a/src/main/java/com/hbm/tileentity/DoorDecl.java b/src/main/java/com/hbm/tileentity/DoorDecl.java index 9c9887c13..d04b030d3 100644 --- a/src/main/java/com/hbm/tileentity/DoorDecl.java +++ b/src/main/java/com/hbm/tileentity/DoorDecl.java @@ -166,7 +166,7 @@ public abstract class DoorDecl { } else if(y > 1) { return AxisAlignedBB.getBoundingBox(0, 0.75, 0, 1, 1, 1); } else if(y == 0) { - return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, 0.1, 1); + return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, forCollision ? 0 : 0.1, 1); } else { return super.getBlockBound(x, y, z, open, forCollision); } @@ -245,7 +245,7 @@ public abstract class DoorDecl { if(y == 3) { return AxisAlignedBB.getBoundingBox(0, 0.5, 0, 1, 1, 1); } else if(y == 0) { - return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, 0.08, 1); + return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, forCollision ? 0 : 0.08, 1); } } return super.getBlockBound(x, y, z, open, forCollision); @@ -328,9 +328,8 @@ public abstract class DoorDecl { @Override public AxisAlignedBB getBlockBound(int x, int y, int z, boolean open, boolean forCollision) { - if(open) { - if(y == 0) return AxisAlignedBB.getBoundingBox(0, 0, 1 - 0.25, 1, 0, 1); - return AxisAlignedBB.getBoundingBox(0, 0.9375, 1 - 0.25, 1, 1, 1); + if(forCollision && open) { + return AxisAlignedBB.getBoundingBox(0, 0, 0, 0, 0, 0); } else { return AxisAlignedBB.getBoundingBox(0, 0, 1 - 0.25, 1, 1, 1); } @@ -437,7 +436,7 @@ public abstract class DoorDecl { return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, 1, 1); } if(y == 1) { - return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, 0.0625, 1); + return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, forCollision ? 0 : 0.0625, 1); } else if(y == 4) { return AxisAlignedBB.getBoundingBox(0, 0.5, 0.15, 1, 1, 0.85); } else { @@ -514,7 +513,7 @@ public abstract class DoorDecl { } else if(y == 3) { return AxisAlignedBB.getBoundingBox(0, 0.5, 0, 1, 1, 1); } else if(y == 0) { - return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, 0.0625, 1); + return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, forCollision ? 0 : 0.0625, 1); } return super.getBlockBound(x, y, z, open, forCollision); }; @@ -596,7 +595,7 @@ public abstract class DoorDecl { @Override public AxisAlignedBB getBlockBound(int x, int y, int z, boolean open, boolean forCollision) { - if(open) { + if(forCollision && open) { if(z == 0) { return AxisAlignedBB.getBoundingBox(1 - 0.125, 0, 1 - 0.1875, 1, 1, 1); } else { @@ -697,7 +696,7 @@ public abstract class DoorDecl { if(y > 1) return AxisAlignedBB.getBoundingBox(0, 0.5, 0.5, 1, 1, 1); else if(y == 0) - return AxisAlignedBB.getBoundingBox(0, 0, 0.5, 1, 0.1, 1); + return AxisAlignedBB.getBoundingBox(0, 0, 0.5, 1, forCollision ? 0 : 0.1, 1); return super.getBlockBound(x, y, z, open, forCollision); }; @@ -820,7 +819,7 @@ public abstract class DoorDecl { } else if(y > 1) { return AxisAlignedBB.getBoundingBox(0, 0.85, 0.75, 1, 1, 1); } else if(y == 0) { - return AxisAlignedBB.getBoundingBox(0, 0, 0.75, 1, 0.15, 1); + return AxisAlignedBB.getBoundingBox(0, 0, 0.75, 1, forCollision ? 0 : 0.15, 1); } return super.getBlockBound(x, y, z, open, forCollision); }; @@ -1025,6 +1024,8 @@ public abstract class DoorDecl { return AxisAlignedBB.getBoundingBox(0.4, 0, 0, 1, 1, 1); } else if(z == -3) { return AxisAlignedBB.getBoundingBox(0, 0, 0, 0.6, 1, 1); + } else if(y == 0) { + return AxisAlignedBB.getBoundingBox(0, 0, 0, 1, forCollision ? 0 : 0.0625, 1); } return super.getBlockBound(x, y, z, open, forCollision); };