Guest User

tileEntityClass

a guest
May 2nd, 2016
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.56 KB | None | 0 0
  1. public class MultiBlockBase extends TileEntity implements ITickable {
  2.  
  3.     boolean isComplete = false;
  4.  
  5.     public void onBlockAdded() {
  6.  
  7.         int counter = 0;
  8.         int safetyCounter = 0;
  9.  
  10.         int minX = -1;
  11.         int maxX = 1;
  12.         int minY = 0;
  13.         int maxY = 2;
  14.         int minZ = 1;
  15.         int maxZ = 3;
  16.  
  17.         int absMinX = Math.abs(minX);
  18.         int absMaxX = Math.abs(maxX);
  19.         int absMinY = Math.abs(minY);
  20.         int absMaxY = Math.abs(maxY);
  21.         int absMinZ = Math.abs(minZ);
  22.         int absMaxZ = Math.abs(maxZ);
  23.  
  24.         BlockPos mathCenterPos = new BlockPos((absMaxX - absMinX) / 2, (absMaxY - absMinY) / 2,
  25.                 (absMaxZ + absMinZ) / 2);
  26.  
  27.         BlockPos centerPos = pos.add(mathCenterPos); // center pos of the given cube
  28.         BlockPos aboveCenterPos = centerPos.add(0, 1, 0); // 1 block above the center pos
  29.  
  30.         for (int offsetZ = minZ; offsetZ <= maxZ; offsetZ++) {
  31.             for (int offsetX = minX; offsetX <= maxX; offsetX++) {
  32.                 for (int offsetY = minY; offsetY <= maxY; offsetY++) {
  33.                     safetyCounter++;
  34.  
  35.                     if (worldObj.getBlockState(pos.add(offsetX, offsetY, offsetZ)) == Blocks.brick_block.getDefaultState()) {
  36.                         counter++;
  37.                     }
  38.                     if (safetyCounter == 27) {
  39.                         if (counter == 25 && worldObj.getBlockState(centerPos) == Blocks.glass.getDefaultState()
  40.                                 && worldObj.getBlockState(aboveCenterPos) == Blocks.glass.getDefaultState()) {
  41.                             isComplete = true;
  42.                             System.out.println(isComplete);
  43.                         } else {
  44.                             isComplete = false;
  45.                             System.out.println(counter);
  46.                         }
  47.                     }
  48.                 }
  49.             }
  50.         }
  51.     }
  52.  
  53.     @Override
  54.     public void update() {
  55.         onBlockAdded();
  56.  
  57.     }
  58.  
  59. }
Advertisement
Add Comment
Please, Sign In to add comment