bounding box fixes

This commit is contained in:
Bob 2022-11-24 22:19:46 +01:00
parent babe66c154
commit 6c317ceb44
2 changed files with 25 additions and 9 deletions

View File

@ -199,6 +199,7 @@ public class FluidDuctBox extends FluidDuctBase implements IBlockMulti, ILookOve
boolean nZ = canConnectTo(world, x, y, z, Library.NEG_Z, type);
boolean pZ = canConnectTo(world, x, y, z, Library.POS_Z, type);
int mask = 0 + (pX ? 32 : 0) + (nX ? 16 : 0) + (pY ? 8 : 0) + (nY ? 4 : 0) + (pZ ? 2 : 0) + (nZ ? 1 : 0);
int count = 0 + (pX ? 1 : 0) + (nX ? 1 : 0) + (pY ? 1 : 0) + (nY ? 1 : 0) + (pZ ? 1 : 0) + (nZ ? 1 : 0);
if(mask == 0) {
bbs.add(AxisAlignedBB.getBoundingBox(x + jLower, y + jLower, z + jLower, x + jUpper, y + jUpper, z + jUpper));
@ -210,7 +211,11 @@ public class FluidDuctBox extends FluidDuctBase implements IBlockMulti, ILookOve
bbs.add(AxisAlignedBB.getBoundingBox(x + lower, y + lower, z + 0.0D, x + upper, y + upper, z + 1.0D));
} else {
bbs.add(AxisAlignedBB.getBoundingBox(x + jLower, y + jLower, z + jLower, x + jUpper, y + jUpper, z + jUpper));
if(count != 2) {
bbs.add(AxisAlignedBB.getBoundingBox(x + jLower, y + jLower, z + jLower, x + jUpper, y + jUpper, z + jUpper));
} else {
bbs.add(AxisAlignedBB.getBoundingBox(x + lower, y + lower, z + lower, x + upper, y + upper, z + upper));
}
if(pX) bbs.add(AxisAlignedBB.getBoundingBox(x + upper, y + lower, z + lower, x + 1.0D, y + upper, z + upper));
if(nX) bbs.add(AxisAlignedBB.getBoundingBox(x + 0.0D, y + lower, z + lower, x + lower, y + upper, z + upper));
@ -266,6 +271,7 @@ public class FluidDuctBox extends FluidDuctBase implements IBlockMulti, ILookOve
boolean nZ = canConnectTo(world, x, y, z, Library.NEG_Z, type);
boolean pZ = canConnectTo(world, x, y, z, Library.POS_Z, type);
int mask = 0 + (pX ? 32 : 0) + (nX ? 16 : 0) + (pY ? 8 : 0) + (nY ? 4 : 0) + (pZ ? 2 : 0) + (nZ ? 1 : 0);
int count = 0 + (pX ? 1 : 0) + (nX ? 1 : 0) + (pY ? 1 : 0) + (nY ? 1 : 0) + (pZ ? 1 : 0) + (nZ ? 1 : 0);
if(mask == 0) {
this.setBlockBounds(jLower, jLower, jLower, jUpper, jUpper, jUpper);
@ -277,13 +283,23 @@ public class FluidDuctBox extends FluidDuctBase implements IBlockMulti, ILookOve
this.setBlockBounds(lower, lower, 0F, upper, upper, 1F);
} else {
this.setBlockBounds(
nX ? 0F : jLower,
nY ? 0F : jLower,
nZ ? 0F : jLower,
pX ? 1F : jUpper,
pY ? 1F : jUpper,
pZ ? 1F : jUpper);
if(count != 2) {
this.setBlockBounds(
nX ? 0F : jLower,
nY ? 0F : jLower,
nZ ? 0F : jLower,
pX ? 1F : jUpper,
pY ? 1F : jUpper,
pZ ? 1F : jUpper);
} else {
this.setBlockBounds(
nX ? 0F : lower,
nY ? 0F : lower,
nZ ? 0F : lower,
pX ? 1F : upper,
pY ? 1F : upper,
pZ ? 1F : upper);
}
}
}
}

View File

@ -600,7 +600,7 @@ public class CraftingManager {
addRecipeAuto(new ItemStack(ModBlocks.fluid_duct, 8), new Object[] { "SAS", " ", "SAS", 'S', STEEL.plate(), 'A', AL.plate() });
addRecipeAuto(new ItemStack(ModBlocks.fluid_duct_solid, 8), new Object[] { "SAS", "A A", "SAS", 'S', STEEL.ingot(), 'A', AL.plate() });
addRecipeAuto(new ItemStack(ModItems.template_folder, 1), new Object[] { "LPL", "BPB", "LPL", 'P', Items.paper, 'L', KEY_BLUE, 'B', KEY_WHITE });
addRecipeAuto(new ItemStack(ModItems.template_folder, 1), new Object[] { "LPL", "BPB", "LPL", 'P', Items.paper, 'L', "dye", 'B', "dye" });
addRecipeAuto(new ItemStack(ModItems.pellet_antimatter, 1), new Object[] { "###", "###", "###", '#', ModItems.cell_antimatter });
addRecipeAuto(new ItemStack(ModItems.fluid_tank_empty, 8), new Object[] { "121", "1G1", "121", '1', AL.plate(), '2', IRON.plate(), 'G', KEY_ANYPANE });
addRecipeAuto(new ItemStack(ModItems.fluid_tank_lead_empty, 4), new Object[] { "LUL", "LTL", "LUL", 'L', PB.plate(), 'U', U238.billet(), 'T', ModItems.fluid_tank_empty });