diff --git a/src/main/java/com/hbm/blocks/generic/BlockGrate.java b/src/main/java/com/hbm/blocks/generic/BlockGrate.java index f0fad0edd..e7240b485 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockGrate.java +++ b/src/main/java/com/hbm/blocks/generic/BlockGrate.java @@ -110,14 +110,14 @@ public class BlockGrate extends Block implements ITooltipProvider { if(meta == 0) { // Check that the block below can fit a grate above it Block block = world.getBlock(x, y - 1, z); - AxisAlignedBB bb = block.getCollisionBoundingBoxFromPool(world, x, y - 1, z); - if(!block.isAir(world, x, y + 1, z) && (bb == null || (int) ((bb.maxY - (y - 1)) * 100) < 90)) { + AxisAlignedBB otherBB = block.getSelectedBoundingBoxFromPool(world, x, y - 1, z); + if(!block.isAir(world, x, y + 1, z) && (otherBB == null || otherBB.maxY - (double)y < -0.05)) { world.setBlockMetadataWithNotify(x, y, z, 9, 3); } } else if(meta == 7) { Block block = world.getBlock(x, y + 1, z); - AxisAlignedBB bb = block.getCollisionBoundingBoxFromPool(world, x, y + 1, z); - if(!block.isAir(world, x, y + 1, z) && (bb == null || (int) ((bb.minY - (y + 1)) * 100) > 10)) { + AxisAlignedBB otherBB = block.getSelectedBoundingBoxFromPool(world, x, y + 1, z); + if(!block.isAir(world, x, y + 1, z) && (otherBB == null || otherBB.minY - (double)(y + 1) > 0.05)) { world.setBlockMetadataWithNotify(x, y, z, 8, 3); } } @@ -133,15 +133,11 @@ public class BlockGrate extends Block implements ITooltipProvider { boolean breakIt = false; if(meta == 9) { - AxisAlignedBB bb = world.getBlock(x, y - 1, z).getCollisionBoundingBoxFromPool(world, x, y - 1, z); - if(bb != null && (int) ((bb.maxY - (y - 1)) * 100) >= 90) { - breakIt = true; - } + AxisAlignedBB otherBB = world.getBlock(x, y - 1, z).getSelectedBoundingBoxFromPool(world, x, y - 1, z); + breakIt = !(otherBB == null || otherBB.maxY - (double)y < -0.05); } else if(meta == 8) { - AxisAlignedBB bb = world.getBlock(x, y + 1, z).getCollisionBoundingBoxFromPool(world, x, y + 1, z); - if(bb != null && (int) ((bb.minY - (y + 1)) * 100) <= 10) { - breakIt = true; - } + AxisAlignedBB otherBB = world.getBlock(x, y + 1, z).getSelectedBoundingBoxFromPool(world, x, y + 1, z); + breakIt = !(otherBB == null || otherBB.minY - (double)(y + 1) > 0.05); } if(breakIt) {